抱歉,我回答了自己的问题 - 它实际上只是SEDA,当我看到'BlockingQueue'时,我认为SEDA会阻塞直到队列被读取...这当然是无稽之谈。 SEDA完全是我所需要的。回答问题
我遇到了一个严重困扰我的问题,我们已经通过我们连接的公司提供了一个自定义端点,但是端点保持了对馈送的心跳,当它发送超过一定大小的消息时需要很长时间才能处理阻塞和心跳丢失以及连接断开的路径
显然,这类似于处理非图形线程上的事件以保持平稳运行。但我不确定我是如何在骆驼中实现这一目标的。基本上我想将结果排队并将它们放在一个单独的线程上。
from( "custom:endpoint" )
.process( MyProcesor )
.to( "some-endpoint")
答案 0 :(得分:0)
如建议camel-seda是执行异步/多线程处理的简单方法,请注意阻塞队列仅在内存中(如果VM停止则丢失等)。如果您需要有保证的消息支持,请使用camel-jms