java.net.UnknownHostException がスローされたときにタイムアウトを確認/設定する場所は?
ときどき、コードが存在しない場所に接続しようとし、java.net.UnknownHostException をスローします。これは、アプリで許容されるケースです。
私が抱えている問題は、例外がスローされるまでに約 20 秒かかり、アプリケーション全体の速度が低下することです。
Web サーバーのバージョンは Tomcat 7.0.37 です。次のコネクタの server.xml でタイムアウト設定を (2 秒に) 変更しようとしました。
Connector port="8009" protocol="AJP/1.3" redirectPort="8443" connectionTimeout="2000"
Connector port="8080" protocol="HTTP/1.1" connectionTimeout="2000" redirectPort="8443"
HttpURLConnection を使用しているため、ポート 8080 の接続タイムアウト設定が有効になることを期待していますが、そうではないようです。
また、コード内でタイムアウトを設定しようとしました:
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setConnectTimeout(1000);
Reader reader= new InputStreamReader((InputStream) connection.getContent());
しかし、これもうまくいきませんでした。何か不足していますか?
た