【问题标题】:Multiple TCP Client configuration多个 TCP 客户端配置
【发布时间】:2021-03-10 21:36:38
【问题描述】:

我正在设计一个带有 Spring 集成的 Spring Boot 应用程序以连接到 TCP 服务器。 将有多个服务器(不是此应用程序的一部分),我们需要这些客户端(应用程序的一部分)。一旦建立了套接字连接,就需要对其进行维护和重用以用于所有通信。根据标识符(服务器 ID),我们需要使用适当的客户端套接字连接将消息发送到适当的服务器。

之前我们使用 netty 完成了这项工作,我们在应用程序启动期间动态创建连接并将其存储在 HashMap<String, SocketConnectionHandler> 中,其中键是服务器 ID。 SocketConnectionHandler extends SimpleChannelInboundHandler SocketConnectionHandler 提供了用于与服务器通信的 channelRead 和 channelWrite。 如果添加了新服务器,只需更改配置,无需部署应用程序。

我们可以使用 spring-integration 实现相同的功能吗?

【问题讨论】:

    标签: spring-boot sockets spring-integration tcpclient


    【解决方案1】:

    是的;这个示例正是这样做的......

    https://github.com/spring-projects/spring-integration-samples/tree/master/advanced/dynamic-tcp-client

    动态 TCP 客户端

    演示了一种按需动态添加 TCP 客户端的技术,包括缓存和 LRU 删除。

    使用 Spring Integration Java DSL Runtime 流注册功能。

    代码在端口 1234 和 5678 上启动两个入站通道适配器,并向每个适配器发送一条消息。

    【讨论】:

      猜你喜欢
      • 2021-04-09
      • 2012-09-26
      • 2015-04-20
      • 2020-12-09
      • 2020-11-16
      • 1970-01-01
      • 1970-01-01
      • 2011-04-25
      • 2013-02-17
      相关资源
      最近更新 更多