在学习和使用Mule时,我不知道排队-异步流队列和VM队列之间是否有区别。
我的问题是,它们是相同的队列(只是文档中的名称不同)还是不同的队列?
在一个具体例子中:
<flow name="fooFlow" processingStrategy="queued-asynchronous">
<vm:inbound-endpoint path="foo" exchange-pattern="one-way"/>
<component class="com.foo.FooComponent"/>
</flow>VM入站端点是否接收来自一个队列的消息,而流是否有另一个队列来接收来自入站端点的消息?或者他们是同一个SEDA队列?
发布于 2015-05-13 21:52:43
这是两个非常不同的概念,一个是基于流的处理方式,另一个是基于轻量级的排队机制。VM是一种传输,它具有持久的队列功能以及事务。
请参见(理解流执行模型的最后一个链接):
发布于 2015-05-14 18:46:03
添加有关您演示的特定示例的一些详细信息。
不需要显式指定处理策略,Mule根据入站端点的exchange模式选择默认处理策略。因此,当您有一个非事务单向端点时,处理策略是排队异步的。

VM入站端点是否接收来自一个队列的消息,而流是否有另一个队列来接收来自入站端点的消息?或者他们是同一个SEDA队列?
要接收消息,Mule将使用专门用于VM连接器的线程池(接收线程绑定到传输)。一旦收到消息,它将使用流的线程池中的线程进行处理。(如果我能得到验证或纠正,那就太好了:)
(大部分信息来自前面的答案中的链接)
https://stackoverflow.com/questions/30173444
复制相似问题