SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【Webサイトパフォーマンス改善】DNSへの問い合わせを減らす

問題

Firebugで接続状況を見ていると、水色の(DNSルックアップ)が結構あるんだけど、これでいいの?

答え

改善しましょう。

通常のWebページでは、1つのページを表示するために、同じWebサーバーに対していくつものリクエストが送られる。HTMLを取得したら、その中にあるスタイルシート、スクリプト、画像etc.をすぐに要求する。そういった場合は、サーバー側でKeepAliveを有効にする。

一般的なブラウザもKeepAliveに対応しているので、これでページ表示が効率化される。

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 3

KeepAliveTimeout は、デフォルト15秒になっているが、通常こんなに長時間待機する必要はない。最初は3秒や1秒でもよい。もちろん、各設定値は計測をしながらそのサイト、システムに合った値にしていくのがよい。

なお、通常のWebページ出ない場合は KeepAlive Off がよい場合もある。何かの表示が1回のやり取りですんでしまう場合、次の要求を待つために待機するのは無駄でしかない。

参考資料

KeepAlive Off のとき

水色のDNSルックアップを示す部分が発生している。

KeepAlive Off のとき

KeepAlive On のとき

DNSルックアップはなくなり、たくさんのリクエストを送らなくてはならない場合は単純に待機している。

KeepAlive On のとき

関連するメモ

コメント