96.2. 使用 master 端点
只需为任何带有 master:someName: someName: 前缀的 camel 端点,其中 someName 是一个逻辑名称,用于获取 master 锁定。例如:
from("master:cheese:jms:foo").to("activemq:wine");
from("master:cheese:jms:foo").to("activemq:wine");
在本例中,有 master 组件可确保该路由只在任意给定时间在一个节点上活跃。因此,如果集群中有 8 个节点,则 master 组件将选择一个路由作为领导路由,只有此路由将活跃,因此只有此路由将使用来自 jms:foo
的消息。如果此路由停止或意外终止,则 master 组件将检测到这一点,并重新检测另一个节点处于活动状态,然后变为 active,然后开始消耗来自 jms:foo
的消息。
注意
Apache ActiveMQ 5.x 具有这样的功能,称为 Exclusive Consumers。