この要件の説明は ユースケース #7 をご覧ください。
注意: この DNS プラグインはまだテストされていません。テストに協力してくれる方を歓迎します。
DNS の測定にはサーバーサイドの準備がいくつか必要になります。その準備については Yahoo! のエンジニアである Carlos Bueno による ドキュメント に詳しく書かれていますので、目を通してください。要点として彼が挙げているものは:
A.gif
と B.gif
という名前の画像( images/ のサブディレクトリーから)をできるだけ速く受け取れるようにウェブサーバーの準備をします。KeepAlive や Nagle などのキャッシュのためのヘッダーがオフになっていることを確認してください。boomerang.js
と一緒に dns.js
を読み込みます(2つのファイルを結合しても構いません)。ステップ1とステップ2は複雑なうえ、あなたの DNS サーバーは完全にコントロールできない(例えば Dreamhost を使っている)場合、これらを行うのは難しいかもしれません。もし可能であれば、読み進めてください。
プラグインを設定するために画像をどこから取得するかを伝える必要があります。帯域幅プラグインとは違い、URL にワイルドカードが必要になります:
<script src="boomerang.js" type="text/javascript"></script> <script src="dns.js" type="text/javascript"></script> <!-- concatenate with boomerang.js for better performance --> <script type="text/javascript"> BOOMR.init({ user_ip: "<user's ip address>", beacon_url: "http://yoursite.com/path/to/beacon.php", DNS: { base_url: "http://*.yoursite.com/images/" } }); </script>
正しく設定できれば、これで誤差範囲内で DNS の遅延が測定できるはずです。エラーを調べるためにテストを複数実行できますが、今のところ1回しか行ないません。
最新のソースコードとドキュメントは github.com/SOASTA/boomerang に公開されています。