2017-05-03 17 views
2

Apache共通プールを使用してTCP接続をプールし、接続を再利用するにはどうすればよいですか?Apache共通プールで実装されたTCP接続ポーリングに持続的な接続がありません

TCP接続プールを実装するには、Apache共通プール(1.6)を使用しようとしていますが、実装するためにhttps://javaarchitectforum.com/tag/apache-common-object-pool-example/に投稿されたオブジェクトプールを使用しました。

別のサーバーへの接続を開始すると、永続化されたTCP接続が表示され、後続の他の接続要求に再利用することが予想されます。

問題は、サーバーへの永続的な接続(netstat -an)が見えないことです。オブジェクトを借用すると、新しい接続が確立され、オブジェクトを返すとソケットが切断されます。

私はTCPプールを作成する正しい方法を使用していますか?

答えて

2

問題が解決しました。問題を解決する

二の改正:

  1. オブジェクトを返す際に、DataOutputStreamをクローズするべきではありません。
  2. clientObjectは、makeObject()[clientSocket.setKeepAlive(true)]のときに保持されます。

結果として、接続は保持され、次の要求に再利用されます。

関連する問題