[Apache]MPM
今日はApacheのMPMについて調べた。
デフォルト
MPMのデフォルトはコンパイル時に意図的に他を選択しなければ次のものが選択されている。
→beos
→mpm_netware
→mpmt_os2
→prefork
→mpm_winnt
よく使うやつ
まずは身近なこれらについて簡単にまとめる
- prefork
スレッドを使わず事前にforkを行う
スレッドセーフでないライブラリとの互換性をとるためにスレッドを避ける必要があるサイトに適切
あるリクエストで発生した問題が他に影響しない利点がある
preforkを直訳すると「事前分岐」
- worker
リクエストの応答にスレッドを使うとプロセスベースのサーバより少ないシステム資源で多くのリクエストに応答できる
多くのスレッドを持った複数のプロセスを維持することでプロセスベースのサーバの持つ安定性を保持している
preforkと違い他のリクエストの影響を受ける
詳細やら設定の説明については今度続き書く