山下寛人オフィシャルブログ

オイシックス株式会社 執行役員 システム本部長 山下寛人の公式ブログです。

サーバーにスワップはいらない

よく考えたらサーバーにスワップはいらないのでは

ないかという気がしてきました。


Webサーバーのような多数のユーザーが利用する

サーバーについては、トラフィックが増えてくると

プロセスが増え、それぞれのプロセスがメモリを使い、

メモリが足りなくなり、スワップが起こります。

しかしトラフィックが多い状態でスワップが起こると

処理が遅延してよりプロセスが増えます。

結果としてプロセスが急増し激しくスラッシング

全体がハングに近い状態になります。


1人で使っているデスクトップマシンであれば

動かなくなったら待ちますが、Webの場合、ページが

出ないと何回もクリックしたりリロードするので

余計にトラフィックが増えます。


そう考えるとスワップが始まると一気にサーバーダウンに

向かって突っ走るだけです。

スワップによって何かが助かるわけでなく、スワップ

始まる時点でジ・エンドです。


ということはスワップはないほうがよいということになります。

物理メモリが足りなくなったところで新しいプロセスが

作れずエラーになれば全部がハング状態にならないで

キャパの範囲内では動き続けることができるのではないかと

思います。