Asynchronous 负载平衡消息Q(ActiveMQ)
这是我的设想 1) 基于REST的web服务(比如X)接收请求并将其放入ActiveQ 2) 在Q的另一边有一个监听器,它将读取和处理消息。这是异步的 我决定使用ActiveMQ。 但是试图找到一个解决方案,在那里我可以让Q和Q监听器可伸缩 1) 我有很多运行X的实例。因此,Q有多个促动器。 2) 订购对我来说很重要。 3) 因为我的REST服务是无会话的,所以我没有办法用相同的消息ID标记一堆请求。 4) 现在,如果我使用一个Q,它工作得很好 但我想扩大规模,在不影响订单的情况下使用多个Q和多个Q消费者 有人能给我一个解决这个问题的办法吗Asynchronous 负载平衡消息Q(ActiveMQ),asynchronous,activemq,message-queue,Asynchronous,Activemq,Message Queue,这是我的设想 1) 基于REST的web服务(比如X)接收请求并将其放入ActiveQ 2) 在Q的另一边有一个监听器,它将读取和处理消息。这是异步的 我决定使用ActiveMQ。 但是试图找到一个解决方案,在那里我可以让Q和Q监听器可伸缩 1) 我有很多运行X的实例。因此,Q有多个促动器。 2) 订购对我来说很重要。 3) 因为我的REST服务是无会话的,所以我没有办法用相同的消息ID标记一堆请求。 4) 现在,如果我使用一个Q,它工作得很好 但我想扩大规模,在不影响订单的情况下使用多个Q和多
非常感谢,要实现消息排序,activeMQ中定义了两种方法 1) 基于JMSXGroupID的消息组 2) 独家消费者 消息组比独占使用者更有用,因为内部独占使用者一次只使用一个使用者,但在该使用者出现故障的情况下,它会连接到其他使用者 您可以在此处阅读ActiveMQ文档以了解相同的内容
祝你好运 我们可以使用以下类型的连接URL来利用ActiveMQ负载
failover://(tcp://192.nnn.nn.nn:61616,tcp://192.nnn.nn.nn:61616)?randomize=false
randomize=true
将在活动模式下在两个AciveMQ之间进行消息洗牌,而不仅仅是通过ActiveMQ的故障转移
在下面的Apache站点链接下可以找到关于此的完整参考
尽管Apache必须提高ActiveMQ的高可用性,但高可用性(即群集)配置仍然可以使应用程序的运行更加稳定,因此工作更加顺畅
尽管由于限制,负载平衡/容错配置受到限制。下面的链接中提供了当前的Apache ActiveMQ高可用性配置
然而,KahaDB
有文件锁定限制,以下调整/替换配置方式可以完成
1) 共享文件系统主从-共享文件系统,如SAN
2) JDBC主从-共享数据库
3) 复制的LevelDB存储,-ZooKeeper服务器
除此之外,通过使用JCA连接器,比如JBoss、Weblogic、Websphere、Geronimo、Glassfish,可以完成ActimeMQ补丁作为一种资源适配器。使用apachecamel(karaf),JBoss融合了ESB类产品HA和ActiveMQ集群