WEBシステム開発・デザイン制作などすべての作業を一貫してご提供しております。(大阪・東京近辺)

WEBシステム開発/Apacheを高速化、最適化、チューニングする方法(worker編)

●Apache MPM worker
マルチスレッドとマルチプロセスのハイブリッド型ウェブサーバを実装したマルチプロセッシングモジュール
MPM
mpm_worker_module
worker.c


●Apache MPM prefork
スレッドを使わず、先行して fork を行なうウェブサーバを実装
MPM
mpm_prefork_module
prefork.c


通常、Apacheの動作にはpreforkを使用されている方がほとんどだと思われます。

デフォルトのまま使用している場合は、preforkなのでそのまま何も考えずに運用されている。
PHPなどのプログラムを動作させる場合、preforkが安定して動作するから。

いろいろな理由でpreforkを利用されている場合がありますね。

ただ、アクセス数が想定した数より多くなってくると
リクエストの遅延など、コネクション接続関係でいろいろと問題が多発してしまいます。

MaxClientsの値を調整したりと、設定値をチューニングして
対応してみたりと…

ある程度は、設定値のチューニングだけで、1日1000万アクセスぐらいは1台のサーバーで
処理できるかと思いますが

どうせならworkerを思い切って導入されて見るのも手かと思います。
やはり気になる点として、PHPなどのプログラムでの動作が安定しない?!

実際に弊社ではworkerを導入して動作が不安定になったという事は
一度もなく、逆に動作が安定したように感じるくらいです。

サーバーのスペック、サイトのサービス内容と比較しながら
導入を検討されることをお勧めします。