KeepAliveの値の考察
2017/04/22
2019/12/29
タグ: keepalive, 適正値
Apache WEBサーバに限らずだが、よくあるWEBサーバのチューニングにKeepAliveをゼロにするというのがある。
これが、実はおおきな間違いなのである。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#Apache web設定の例 httpd.conf # # Timeout: The number of seconds before receives and sends time out. # Timeout 60 # # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive On ## MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. #MaxKeepAliveRequests 32 ## KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. #KeepAliveTimeout 15 ---※2 |
KeepAliveはサイトの種類、性質によって平均滞在時間が異なるものであるから、それに合わせて長めにとって上げた方がむしろユーザ側からは早いレスポンスで動作していると感じるのである。—※2
サイトアクセスが非常に多いサイトの場合、できるだけ多くの人に表示させる機会を与えるために一時的にKeepAliveTimeoutをゼロにするというテクニックはあるが、これは恒常的な対応であってはいけない。
臨時対応ならOKだが、アクセスが常に多いならむしろサーバを複数たてるなり、増設してロードバランサーで対応をとることが正しい道である。