Apache Common Pool实现的TCP连接池中的非持久连接

No persistant connection in TCP connection poll implemented by Apache Common Pool

我如何使用 Apache 公共池来合并 TCP 连接并重用连接?

为了实现 TCP 连接池,我尝试使用 Apache 公共池 (1.6),我使用 https://javaarchitectforum.com/tag/apache-common-object-pool-example/ 中发布的对象池来实现它。

我确实希望在启动与另一台服务器的连接时看到持续的 TCP 连接,并将其重新用于其他后续连接请求。

问题是,我看不到与服务器的任何持久连接 (netstat -an)。通过借用对象,建立新的连接,当 return 对象时,套接字是 disconnected.No 池化!

我创建 TCP 池的方法是否正确?

问题已解决。

解决问题的两个修正:

  1. 返回对象后,不应关闭 DataOutputStream。
  2. clientSocket 应在 makeObject() [clientSocket.setKeepAlive(true)] 时保持活动状态。

因此,连接被持久化并重新用于下一个请求。