だるろぐ

だるいぶろぐです

keepAliveとか

やっぱりこの記事も自力ではありません。


今更すぎますがapacheのkeepaliveの話。
keepaliveがonだと、1リクエストの間で複数コンテンツを返す。
例えば、ごくふつーのwebサービス(サービスA)と、jsonやらjsのコールバック関数(かつその関数は非同期で動作する)しか返さないwebサービス(サービスB)の2つのサービスのフロントエンドが同じapacheだったとする。
keepalive、前者ではまぁ別にどっちでもいい。規模や性質にもよるだろうけど、ごくふつーなので。
しかし、後者ではほぼ無駄。切りましょう。


そもそもフロントエンドのapacheを分けるべきかもしれない。
分けたとして、

  • 仮にサービスBが高負荷で詰まったとしても、サービスAには問題なく接続できる

というメリットがある。
まぁその辺はケースバイケースなので適宜よしなに。


あとサービスBのような性質のサービスで、仮にめっちゃアクセスが来たとする。桁がちょっと違うくらいの。
そんな場合でも、案外MaxClientsは200も要らなかったりする 場合もある。


keepaliveのon/offのユースケースが分かりやすいケースでした。