spring-integration之通过 TCP/IP 的 Spring 集成请求/回复关联之无 JMS
我是 spring-integration 的新手,想了解如何使用 Spring Integration 实现以下场景。
我正在尝试创建一个分布式应用程序,它将具有多个节点(如在集群中)并满足以下要求。
-我需要通过 TCP/IP 实现基于请求/回复的消息传递。
- 我不想使用消息代理(例如 ActiveMQ)。
- 我打算使用 SI 提供的 TCP 入站和出站网关。
我不确定 SI 如何帮助我实现以下目标
- 当有多个客户端连接到同一个服务器端 TCP 入站网关时,请求/回复关联将如何工作?
- 我了解到在通过 TCP/IP 发送消息时消息 header 会被剥离,解决方法是什么?
- 这种方法是否可行? :(
谢谢
桑迪普
请您参考如下方法:
如果您使用网关,该框架将为您处理关联。
这里有一个示例...
https://github.com/SpringSource/spring-integration-samples
(参见 basic/tcp-client-server)。
引用手册中有关于消息关联的讨论...
如果您需要使用适配器而不是网关(因为您需要异步消息传递或无法忍受网关的某些性能限制),那么您需要将相关数据添加到消息负载中。
我们有一个 Unresolved JIRA 问题
https://jira.springsource.org/browse/INT-1807
允许通过 TCP 传输一些 header 。但是,由于没有自然的标准方法来执行此操作,因此它可能仅可用于 SI 到 SI 通信(或者需要对等方的自定义代码)。我们可能会在 2.2 中拥有它。里程碑很快。投票吧!
希望对您有所帮助。
更新:3.0 release支持将选定的 header 添加到 TCP 消息中。
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。