さて、私は奇妙な質問をします。httpclient で http リクエストを送信します。リクエストで、dynamic.12306.cn のようなドメイン名を使用するか、IP アドレスを使用して のように windows/system32/driver/ext/hosts に IP 情報を入れると122.227.2.27 dynamic.12306.cn
、リクエストはすぐに返されます。しかし、IP のみを使用し、ホストに情報を入力しないと、非常に遅くなります。
上記の 2 つについて、以下に例を示します。
ケース 1. 速度が速い。リクエスト URL はhttps://dynamic.12306.cn/otsweb/main.jspです
または リクエスト URL はで、ホストにhttps://122.227.2.27/otsweb/main.jsp
入れます。122.227.2.27 dynamic.12306.cn
ケース 2. 速度が遅い。リクエスト URL はhttps://122.227.2.27/otsweb/main.jsp
、ホストに情報を入力しないでください。
httpclient のデバッグ モードを開き、ケース 2 の方法を使用すると、サーバーへの接続が非常に遅いことがわかりました。
ログ:
2013/03/17 10:19:10:665 CST [デバッグ] BasicClientConnectionManager - ルート {s} の接続を取得 ->
https://122.227.2.27
2013/03/17 10:19:11:234 CST [デバッグ] DefaultClientConnectionOperator - への接続
122.227.2.27:443
2013/03/17 10:19:20:796 CST [デバッグ] RequestAddCookies - CookieSpec 選択: ベストマッチ
サーバーへの接続には数秒かかります。
しかし、ケース1の方法を使用すると、ログ:
2013/03/17 10:30:13:876 CST [デバッグ] BasicClientConnectionManager - ルート {s} の接続を取得 -> https://dynamic.12306.cn
2013/03/17 10:30:14:403 CST [デバッグ] DefaultClientConnectionOperator - dynamic.12306.cn:443 への接続
2013/03/17 10:30:14:499 CST [デバッグ] RequestAddCookies - CookieSpec 選択: ベストマッチ
サーバーへの接続が速いです。