抛出 java.net.UnknownHostException 时在哪里检查/设置超时?
有时我的代码尝试连接到一个不存在的位置并抛出 java.net.UnknownHostException 这是我的应用程序中可接受的情况。
我遇到的问题是在抛出异常之前大约需要 20 秒,这会减慢整个应用程序的速度。
网络服务器版本是 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());
但这也不起作用,有什么想法吗?我错过了什么吗?
ta