ドキュメント一覧 | 使用方法一覧

Boomerang 使用方法 #8: DNS の遅延を測定する

この要件の説明は ユースケース #7 をご覧ください。

注意: この DNS プラグインはまだテストされていません。テストに協力してくれる方を歓迎します。

DNS の測定にはサーバーサイドの準備がいくつか必要になります。その準備については Yahoo! のエンジニアである Carlos Bueno による ドキュメント に詳しく書かれていますので、目を通してください。要点として彼が挙げているものは:

  1. ワイルドカードを含めたホスト名とメインサイトと共有されない Cookie を準備します。例えば60秒など、下流のキャッシュを汚染しない低い TTL を与えます。
  2. ワイルドカードを含めたホスト名で A.gifB.gif という名前の画像( images/ のサブディレクトリーから)をできるだけ速く受け取れるようにウェブサーバーの準備をします。KeepAlive や Nagle などのキャッシュのためのヘッダーがオフになっていることを確認してください。
  3. boomerang.js と一緒に dns.js を読み込みます(2つのファイルを結合しても構いません)。
  4. DNS プラグインにどこから画像を取得するかを伝えます。

ステップ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回しか行ないません。