java - Spring 内容集成 channel

标签 java spring integration spring-integration

我已经在当前成功地使用了 Spring Integration 来满足一些需求。太棒了..

在重负载下观察到一些奇怪的行为,其中同一条消息似乎被处理了不止一次。我可以确认这一点,因为数据库中有多行,这通常是通过 channel 配置的链上的最后一个命令。

进一步深入研究手册,看起来负载平衡是由 spring 自动完成的。手册上说消息在多个消息处理程序之间是平衡的。

问题是:

  1. 默认情况下, channel 上有多少个处理程序?加载的 spring XML 似乎没有该配置。我所做的就是这样(根据手册中的建议):
<int:channel id="SwPath.Channel"/>
<int:chain id="SwPath.chain" input-channel="SwPath.Channel">
</int:chain>

我可以禁用故障转移,但我很想知道默认情况下有多少个故障转移。

最佳答案

自从我研究这些负载均衡器以来已经有一段时间了,但我记得线程池中的默认线程数在 2 到 10 之间。

您可能发现了并发错误。

如果您打开 TRACE 日志记录,负载均衡器将为您提供大量信息,但这很容易隐藏问题。

如果您使用 JUnit 测试用例创建 JIRA 问题,我相信会更容易弄清楚到底发生了什么。

关于java - Spring 内容集成 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12570518/

相关文章:

android - Drools(专家系统)与 Android 项目的集成

integration - 软件规划 : integration

java - FileInputStream vs ClassPathResource vs getResourceAsStream 和文件完整性

java - JAVA 中 Streaming API 的最佳搜索算法

java - 显示模型中的 JList 元素

java - Spring JDBC 与普通 JDBC 的区别?

java - Spring MVC url 模式语法

java - 使用@PropertySource配置Spring属性

javascript - 跨域应用集成?

JAVA - 从迭代列表中删除非迭代器元素