ドメインの一部のパスを他のWebホストにルーティングする必要があるため、サイトのリクエストページが最初にリバースプロキシを経由する必要があるWebサイトで作業しています。2つのGETリクエストの待ち時間を比較する
スタティックアセット(CSS、JS、イメージ)を本当に高速にしたいと思っています。これらのリクエストをプロキシに転送する追加の「ステップ」が待ち時間を追加することです。これらの静的資産がプロキシ経由でルーティングされる理由はありません。
私は私のサイトは、Webホストに直接指して別々のドメインを介して、静的な資産を果たすことによって、この設定を実現することができます。
www.sample.com - >リバースプロキシ - > Webホスト assets.sample.com - > web host
これまでは少し複雑です(別のドメインのアセットへのパスを出力するようにサイトを修正する必要があります)。私はそれがやる価値があることを確かめたい。
リバースプロキシがリクエストの応答時間に与える影響を正確に測定するにはどうすればよいですか?
私はこの単純なPHPスクリプトを作成したが、それは良い方法かない場合、私は疑問に思う:
$with_proxy = get_average_response_time('https://www.example.com/path/to/asset.jpg');
$without_proxy = get_average_response_time('https://assets.example.com/path/to/asset.jpg');
echo "difference: " . $with_proxy - $without_proxy;
function get_average_response_time($url) {
$total = 0;
$amount = 50;
for ($i = 0; $i < $amount; $i++) {
$start = milliseconds();
file_get_contents($url);
$total += milliseconds() - $start;
}
return $total/$amount;
}
function milliseconds() {
$mt = explode(' ', microtime());
return ((int)$mt[1]) * 1000 + ((int)round($mt[0] * 1000));
}