通过TCP / IP进行Spring集成请求/回复关联 - 无JMS

时间:2012-02-29 15:34:20

标签: spring-integration

我是spring-integration的新手,想要了解如何使用Spring Integration实现以下场景。

我正在尝试创建一个分布式应用程序,它将具有多个节点(如在群集中),具有以下要求。

- 我需要通过TCP / IP实现基于请求/回复的消息传递 - 我想要使用消息代理(例如ActiveMQ) - 我打算使用SI提供的TCP入站和出站网关。

我不确定SI如何帮助我实现以下目标 - 当多个客户端连接到同一服务器端TCP入站网关时,请求/应答关联如何工作? - 我了解在通过TCP / IP发送消息时消息标题被剥离,解决方法是什么? - 这种方法是否可行? :(

谢谢你 的Sandip

1 个答案:

答案 0 :(得分:6)

如果您使用网关,框架将为您处理相关性。

这里有一个示例显示...

https://github.com/SpringSource/spring-integration-samples

(参见basic / tcp-client-server)。

参考手册中有关于消息关联的讨论......

http://static.springsource.org/spring-integration/docs/2.1.0.RELEASE/reference/html/ip.html#ip-correlation

如果您需要使用适配器而不是网关(因为您需要异步消息传递或者不能满足网关的某些性能限制),那么您需要将相关数据添加到消息有效负载中。

我们有一个开放的JIRA问题

https://jira.springsource.org/browse/INT-1807

允许通过TCP传输一些标头。但是,由于没有自然标准的方法来执行此操作,因此它可能仅适用于SI到SI通信(或者需要在对等方上使用自定义代码)。我们可能会在2.2中有这个。里程碑很快。投票吧!

希望有所帮助。

更新:3.0 release支持将选定的标头添加到TCP消息中。