使用Apache Camel集成的二进制有效负载的顺序交付



我需要按顺序发送文件。例如,如果有三个二进制文件F1, F2和F2它们的顺序是F1, F2和F3。必须按照相同的顺序交付,即F1, F2和F3。它在快乐的工作流程。

但是,当F1的交付由于网络故障而失败时,该排序将中断。

My Research So Far:

  1. 使进程同步,发送成功或失败到源系统,源系统将发送下一个有效载荷或相同的有效载荷。它的性价比和对其他系统的影响。

另外,仅供参考-基本电流是如何工作的?

源系统使用REST客户端发送二进制数据到我们的REST服务,我们发送连接到FTP服务器并发送二进制有效载荷到需要的文件夹。

您有一组逻辑上不兼容的功能需求。您希望保持秩序,但也要注明"1"。我们可以继续尝试,直到问题得到解决:"这不是一个好的设计"。

两者兼得很难。此外,发送到REST端点本质上是异步的,当两个消息发送到REST端点时,不应该假定顺序。

我建议使用单线程轮询消费者,并在错误处理程序中发出错误通知。

最新更新