用例:需要通过队列从一台服务器向另一台服务器发送一个巨大的文件(100 MB 的倍数)。
目前,我正在使用 Activemq Artemis 服务器在输入流的帮助下通过 tcp 协议将大文件作为 ByteMessage 发送,重试间隔为 -1 以进行无限制的故障转移重试。这里的主要问题是消费者端点连接将主要不稳定,即由于移动性而与网络断开连接。
因此,当在队列中发送文件时,如果连接断开并且重新连接的代理应该从事务中断的位置恢复(例如),同时将 300 mb 的文件传输到消费者队列,假设 100 mb 的一部分被传输到消费者队列服务器,然后连接断开并在一段时间后重新连接,然后进程应该从传输剩余的 200 mb 而不是整个 300 mb 重新开始。
我的问题是哪一个是在 ActiveMQ Artemis 中实现它的最佳协议(tcp、Stomp 和 openwire)和最佳实践(blobmessage、bytemessage 输入流)