3

Java クライアントからリモート Tomcat サーバーを呼び出そうとしていますが、断続的に SocketTimeoutException: connection time out が発生します。( http://docs.oracle.com/javase/7/docs/api/java/net/SocketTimeoutException.html )

ここにスタックトレースがあります

Caused by: java.net.SocketTimeoutException: connect timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:382)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:241)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:228)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:365)
        at java.net.Socket.connect(Socket.java:527)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:570)
        at org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory.createSocket(EasySSLProtocolSocketFactory.java:189)
        at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:706)
        at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:386)
        at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324)

一貫性がありません。コードが複数回接続を試行すると消えます。

私はsocketTimeoutが何を意味するかを理解しています。私は読み取りタイムアウトを取得していませんが、接続タイムアウトを取得しています。これは、クライアントがサーバーとのtcp接続のセットアップに失敗したことを意味します。そのポートの何か他のもの。サーバーが到達可能で稼働中であることはわかっています。

サーバーへの接続が拒否されているようですが、その理由を知りたいですか? どうすれば始められますか? 何を探すべきですか?私のサーバーは、EC2 インスタンスで実行されている redhat linux ボックスで実行されています。接続が拒否されている理由を確認する方法はありますか?

4

1 に答える 1