我有一个保存持久消息的持久队列。消息以大约每秒 10 条消息的速率进入队列。
客户端无法以该速率获取这些消息。结果,服务器上的队列不断增长。
每条消息小于 1 KB,我在服务器和我的机器之间有一条健康的 2 Mbps 线路。使用网络监控实用程序,我发现它几乎没有使用任何带宽。
到目前为止,客户端对消息什么都不做,只是将它们打印到控制台,因此客户端的处理时间几乎为 0。
其他一些细节:我正在使用 java 客户端。我已将客户端设置为预取 10000 条消息。(也尝试使用默认值)往返时间约为 350 毫秒。消息被单独确认。
可用资源未得到充分利用,我认为每秒 10 条消息几乎没有任何负载。如何加快速度,以便将队列中的消息更快地传输到客户端。可能使用某种批处理。