![](/img/trans.png)
[英]Java multithreading and connection pooling with PreparedStatement
[英]Connection pooling and Multithreading for TCP Socket?
我有一个通过TCP套接字与应用程序(例如B)通信的Java应用程序(例如A)。 我的Java应用程序是多线程的,最多可以处理100个线程。 为了在A-> B之间进行通信,我们有10个套接字。
挑战 -
连接池 -需要连接池机制来处理n个(例如100个)应用程序A线程,并通过x个(例如10个)TCP Socket与应用程序B通信。
多线程 -两个线程如何访问同一套接字,一个接一个地发送请求并获取映射到适当线程的响应。
- 多个请求 -两个线程是否可以同时在单个套接字上发送请求。
我们可以通过任何框架克服这一挑战吗? 可能吗? 我听说Spring Integration / ApacheCamel / Local MQ可以解决此解决方案。 任何例子。
使用Spring Integration:
CachingClientConnectionFactory
TcpOutboundGateway
(带有CachingClientConnectionFactory
)。 但是您必须进行自己的请求/回复协作(通常基于消息中的内容); 回复可能不会按照发送顺序返回。 由于没有执行此协作的标准方法,因此该框架本身不支持它。
我能够通过jPOS解决上述问题。
jPOS可以进行多路复用。 它使用ISOMessage字段11和41来匹配请求和响应。
jPOS还提供池化机制。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.