gpt4 book ai didi

java - 兔子MQ : Improve queue flushing speed

转载 作者:行者123 更新时间:2023-12-01 14:43:42 25 4
gpt4 key购买 nike

我有一个持久队列,用于保存持久消息。消息以每秒大约 10 条消息的速度到达队列。

客户端无法以该速率获取这些消息。结果,服务器上的队列不断增长。

每条消息都小于 1 KB,并且服务器和我的计算机之间有一条正常的 2 Mbps 线路。使用网络监控实用程序,我发现它几乎没有使用任何带宽。

到目前为止,客户端对消息没有执行任何操作,只是将它们打印到控制台,因此客户端上的处理时间几乎为 0。

其他一些细节:我正在使用java客户端。我已将客户端设置为预取 10000 条消息。 (也尝试使用默认值)往返时间约为 350 ms。消息是单独确认的。

可用资源未得到充分利用,在我看来,每秒 10 条消息几乎算不上什么负载。如何加快处理速度,以便将队列中保留的消息更快地传输到客户端。可能使用某种批处理。

最佳答案

如果您每 350 毫秒单独确认一次消息,我预计消费者每秒可能会收到大约 1/0.35 或大约 2.9 条消息。但是,该协议(protocol)可能不是那么高效,并且可能需要两次往返服务器才能确认消息并获取下一条消息。即每秒 1.4 条消息可能更现实。

350 毫秒的往返时间非常高,您可以在这段时间内环游世界并再次返回,因此简单的解决方案可能并不最适合您。例如伦敦 -> 纽约 -> 东京 -> 伦敦。

我会尝试在您的客户本地找一个经纪人。这样,往返就在您的客户和本地经纪人之间进行。

关于java - 兔子MQ : Improve queue flushing speed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15679461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com