如何通知 'no objects' 消息的 JMS 侦听器
How to notify JMS listener for 'no objects' message
我需要将一些 'car' 个存储库(由不同的从服务器管理)同步到一个存储库(由一个主服务器管理)。
就此而言,我正在使用 ActiveMQ。
我已经定义了一个队列 (master.car.queue),主人会听它,所有奴隶都会 post 他们的汽车仓库(每 5 分钟一次)。
我有一个场景,其中一个奴隶在其存储库中有一辆汽车 - 所以它发布了相应的消息。
几分钟后,这辆车被卖掉了——所以这个奴隶的仓库现在是空的——它应该如何通知主人?
我想到了以下选项:
1) 为该用例创建另一个队列。
2) 使用相同的 master.car.queue - 但发送新的消息类型或对该消息设置一些 属性。
此用例的最佳实践是什么?
谢谢。
取决于您的队列消费者设计以及它是否能够处理这些用例,以及是否从业务角度来看您如何处理消息。
例如,如果收到的消息只是注入到数据库中,您可以为这 2 个用例的 2 个队列创建 2 个消费者(一个用于插入,一个用于更新或删除)并使用您的第一个命题或使用 1 个队列并使用来自EIP 模式作为消息接收者路由到不同的消费者
我需要将一些 'car' 个存储库(由不同的从服务器管理)同步到一个存储库(由一个主服务器管理)。
就此而言,我正在使用 ActiveMQ。 我已经定义了一个队列 (master.car.queue),主人会听它,所有奴隶都会 post 他们的汽车仓库(每 5 分钟一次)。
我有一个场景,其中一个奴隶在其存储库中有一辆汽车 - 所以它发布了相应的消息。 几分钟后,这辆车被卖掉了——所以这个奴隶的仓库现在是空的——它应该如何通知主人?
我想到了以下选项:
1) 为该用例创建另一个队列。
2) 使用相同的 master.car.queue - 但发送新的消息类型或对该消息设置一些 属性。
此用例的最佳实践是什么?
谢谢。
取决于您的队列消费者设计以及它是否能够处理这些用例,以及是否从业务角度来看您如何处理消息。 例如,如果收到的消息只是注入到数据库中,您可以为这 2 个用例的 2 个队列创建 2 个消费者(一个用于插入,一个用于更新或删除)并使用您的第一个命题或使用 1 个队列并使用来自EIP 模式作为消息接收者路由到不同的消费者