Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring JMS消息和JMS消息的负载平衡_Spring_Spring Mvc_Jms_Activemq - Fatal编程技术网

Spring JMS消息和JMS消息的负载平衡

Spring JMS消息和JMS消息的负载平衡,spring,spring-mvc,jms,activemq,Spring,Spring Mvc,Jms,Activemq,遇到这个设计问题,并试图找到使用JMS实现它的最佳方法 Web应用程序具有单个侦听器、多个生产者和多个WorkerBee。侦听器将消息从其队列推送到WorkerBee。生成的所有消息都在侦听器中排队。我想实现一个流程,使用某种负载平衡流程将消息从侦听器队列发送到每个WorkerBee。侦听器队列或WorkerBee队列中仅出现一个消息实例 最好的方法是什么?JMS听起来是个不错的选择吗?如何将消息从侦听器队列推送到WorkerBee队列 欢迎提出建议:)并感谢您的回复 对于此类任务,消息传递是一

遇到这个设计问题,并试图找到使用JMS实现它的最佳方法

Web应用程序具有单个侦听器、多个生产者和多个WorkerBee。侦听器将消息从其队列推送到WorkerBee。生成的所有消息都在侦听器中排队。我想实现一个流程,使用某种负载平衡流程将消息从侦听器队列发送到每个WorkerBee。侦听器队列或WorkerBee队列中仅出现一个消息实例

最好的方法是什么?JMS听起来是个不错的选择吗?如何将消息从侦听器队列推送到WorkerBee队列


欢迎提出建议:)并感谢您的回复

对于此类任务,消息传递是一个不错的选择。我认为您应该使用apachecamel框架作为路由平台,以达到所描述的目的。它允许以非常优雅的方式将业务逻辑从集成级别划分开来

Camel支持大量“开箱即用”组件,包括。
您可以将任务委托给一个WorkerBee的使用模式。

对于此类任务,消息传递是一个不错的选择。我认为您应该使用apachecamel框架作为路由平台,以达到所描述的目的。它允许以非常优雅的方式将业务逻辑从集成级别划分开来

Camel支持大量“开箱即用”组件,包括。
您可以委托给您的WorkerBee的一个使用模式。

JMS听起来是个不错的选择,因为您有多个WorkerBee实例,请让所有WorkerBee侦听单个队列,例如InWorkBeeQueue

现在,您可以将消息从Web应用程序侦听器发布到InWorkBeeQueue。编写一个简单的JavaJMS生产者代码,将消息发布到此队列。根据WorkBee的哪个实例是免费的,它将从InWorkBeeQueue读取消息并进行处理


如果您不想编写新的JMS生产者代码,可以使用Apache Camel routes直接将消息从Web应用队列映射到InWorkBeeQueue。

JMS听起来是个不错的选择,因为您有多个WorkerBee实例,所以让所有WorkerBee侦听单个队列,例如到InWorkBeeQueue

现在,您可以将消息从Web应用程序侦听器发布到InWorkBeeQueue。编写一个简单的JavaJMS生产者代码,将消息发布到此队列。根据WorkBee的哪个实例是免费的,它将从InWorkBeeQueue读取消息并进行处理


如果您想避免编写新的JMS生产者代码,可以使用Apache Camel路由直接将消息从Web应用队列映射到InWorkBeeQueue。

我将研究Camel。非常感谢。我会调查骆驼的。非常感谢。听起来带骆驼的JMS是正确的选择。像JMS和Camel这样的感谢歌曲是正确的选择。谢谢