TCP 套接字的连接池和多线程? [英] Connection pooling and Multithreading for TCP Socket?

查看:42
本文介绍了TCP 套接字的连接池和多线程?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 Java 应用程序(比如 A),它通过 TCP 套接字与一个应用程序(比如 B)通信.我的 java 应用程序是多线程的,最多可以处理 100 个线程.在 A 之间进行通信 -->B 我们有 10 个套接字.

I have a java application(say A) which communicate with an application(say B) via TCP Socket. My java application is multithreaded, can handle up to 100 threads. To communicate between A --> B we have 10 sockets.

挑战 -

  1. 连接池 - 需要连接池机制来处理 n(比如 100)个线程(应用程序 A),与应用程序 B 通过 x(比如 10)个 TCP 套接字.

  1. Connection Pooling - need connection pooling mechanism to handle n(say 100) number of thread(of application A), communicating to application B via x(say 10) number of TCP Socket.

多线程 - 两个线程如何访问同一个套接字并一一发送请求并取回映射到适当的响应线程.

Multithreading - How can two thread access same socket send the request one by one and get back the response mapped to appropriate thread.

多个请求 - 两个线程是否可以同时在单个套接字上发送请求.

Multiple request - Is it possible that two thread can send the request on single socket simultaneously.

我们可以通过任何框架克服这一挑战吗?是否可以?听说 Spring Integration/ApacheCamel/Local MQ 可以解决这个方案.任何例子.

Can we over come this challenge via any framework? Is it possible? I heard that Spring Integration/ApacheCamel/Local MQ can resolve this solutions. Any examples.

推荐答案

我能够通过 jPOS 解决上述问题.

I was able to resolve the problem stated in question via jPOS.

jPOS 可以做多路复用.它使用 ISOMessage 字段 11 和 41 来匹配请求和响应.

jPOS can do multiplexing. It uses ISOMessage field 11 and 41 for matching the request and response.

jPOS 还提供池化机制.

jPOS also providing pooling mechanism.

这篇关于TCP 套接字的连接池和多线程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆