JBoss HornetQ/ActiveMQ Artemis将队列消息保存到文件系统



有人能帮我理解保存Hornetq/ActiveMQ Artemis消息到文件系统并每次绕过队列的影响吗?

消息大于2GB,我在这里描述的HornetQ中遇到Maximum size 2GB exceeded异常。因此,我计划不将消息添加到队列中,而是将其手动写入磁盘,并在header中传递文件的路径,并从文件中读取消息。我真的不知道对性能的影响,所以我问如果我对所有小于2GB的消息都这样做,会有性能影响吗?

根据您提供的信息,我认为除了您之外没有人可以确定"性能影响"。手动将文件写入磁盘还是将文件发送到代理。

一般来说,您将首先节省将文件发送到代理所需的时间,但是您不指示硬盘驱动器的速度有多快。如果代理上的硬盘驱动器比客户端上的硬盘驱动器快得多,那么手动将文件写入磁盘可能需要更长的时间。

同样,如果客户端和代理之间的网络很慢,而客户端和要写入文件的共享驱动器之间的网络很快,那么手动将文件写入磁盘可能会更快。

最终由您来测试更改对性能的影响。