消息大小为

时间:2016-03-14 00:16:54

标签: spring-integration spring-xd

我在春季xd

中发现了以下观察结果

我有一个如下所示的流

s3-source| processor-parser|http-client1|Request-construct-processor>queue

queue > processor|http-client2|processor|http-client3>queue

当我的http-client输出2 kb的json数据时,我能够处理更多的消息,例如每分钟20k msg。如果数据大小为26kb,它的速度很慢,每分钟处理2000 msg。请求构造处理器使用来自http和输出字符串json的响应创建json。我们将通道缓存大小增加到1000.目前我的兔子cpu利用率达到100%它会进入流动状态?同样随着msg大小的增加,我看到msg率和兔子cpu增加的速度变慢了吗?有没有办法克服这个问题。

我的兔子cpu很高,它会移动到流动状态。 消息速率随着消息大小的增加而减慢。 我正在处理超过百万条消息3个容器一个管理员和3个兔子都有8个cpu和32 gb ram机器。 我正在使用10并发运行所有模块 我也在Request-construct-processor的消息头中传递http1响应 此外,我在处理器之间的传输队列中看到很多消息,它们处于空闲阶段,xd停止处理。

更新2

我在标题中传递了26 kb,我现在删除了它,我看到了很好的表现。

1 个答案:

答案 0 :(得分:1)

我想知道你是否可以使用Rabbit消息总线的batchSizebatchTimeout属性来改善性能。

有关详细信息,请参阅here