この問題の直接の原因は、JDBCドライバーが「もう一方の端」によって閉じられたネットワークソケットから読み取ろうとしたことです。
これはいくつかの原因が考えられます:
-
IPからの接続を受け入れないようにリモートサーバーが構成されている場合(「SQLNET.ora」ファイルなど)。
-
JDBC URLが正しくない場合は、データベースではないものに接続しようとしている可能性があります。
-
データベースサービスへの開いている接続が多すぎると、新しい接続が拒否される可能性があります。
症状を考えると、「接続が多すぎる」シナリオが最も可能性が高いと思います。これは、アプリケーションが接続をリークしていることを示しています。つまり、接続を作成してから、(常に)それらを閉じることができません。