添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
霸气的猴子  ·  AI Hello World | The ...·  4 月前    · 
安静的碗  ·  PHP: htmlentities - ...·  7 月前    · 
星星上的毛豆  ·  Python ...·  1 年前    · 

有时有必要将不同的Message Broker连接在一起。 在企业消息传递中,此方案称为桥接。 可以使用JMS和其他协议(例如AMQP,ActiveMQ Artemis核心协议)来完成。 该博客文章重点介绍在WildFly中运行的JMS与两个Apache ActiveMQ Artemis Brokers的桥接。

什么是JMS桥?

JMS桥通常用于连接不同代理或服务器上的队列和主题。 桥将消息从源转发到目标代理,而两个代理不必位于同一群集中。

这使得桥接适合于将消息从一个群集可靠地发送到另一个群集(例如,通过WAN),并且连接可能不可靠。 它也可以像HiveMQ一样用于Message Broker的水平扩展。

横向桥接方案

有两种不同的部署方案。 在此博客文章中,我将使用源代理在WildFly中配置网桥。 也可以在两个Broker的中间使用一个额外的ActiveMQ Broker作为Bridge。

无标题图5
上图显示了我们要配置的方案。 如您所见,我们需要在源Broker上配置一个队列,在目标Broker上配置一个队列,并且需要一些配置以连接这两个队列。

注意: 我没有找到更好的设备图像。 因此,我选择了iPhone图像。 随意可视化其他内容;-)

配置源代理

第一步,您必须为源和目标分别 下载 和解压缩WildFly服务器两次,如上图所示。

在下一步中,您必须配置源WildFly的 standalone-full.xml ,该文件位于WildFly的 standalone / configuration 文件夹中。

打开XML文件后,您必须通过将以下代码段添加到standalone-full.xml中,来将Source Queue添加到Source Broker中:

jmsbridge_source_queue
此代码片段创建一个名为JMSBridgeSourceQueue的新JMS队列。 在下一步中,您必须配置网桥。 桥具有许多配置选项,例如最大批处理时间,最大重试次数等。 这不是本文的一部分。

要启动和运行网桥的下一个更重要的配置是指向先前创建的jms-queue的源标记和包含目标代理的目标队列的配置的目标标记。

jms-bridge-stuff
如您所见,目标代理需要身份验证,因此需要在目标代理上创建应用程序用户。

配置目标代理

配置源代理后,必须配置目标代理。 如前所述,JMS Bridge需要一个应用程序用户,该应用程序用户必须添加到目标代理中,并在源代理standalone-full.xml文件中引用。

可以使用
位于以下位置的 add-user.sh 脚本
bin 文件夹。

在最后一步中,您还必须配置目标代理的standalone-full.xml文件。

您必须创建一个与soure Brokers Bridge配置的目标名称相同的JMS队列。 而已。 在最后一步中,您可以启动两个服务器并检查日志文件。 如果两个WildFlies都成功启动且没有任何错误,则表明Bridge已启动并正在运行。

启动经纪人

./standalone.sh -Djboss.socket.binding.port-offset=100 -c standalone-full.xml
./standalone.sh -c standalone-full.xml

可以使用许多属性来配置JMS Bridge。 服务质量,最大批处理时间和最大批处理大小的最大重试次数以及失败重试间隔时间。

玩转您的JMS Bridge!

翻译自: https://www.javacodegeeks.com/2016/11/building-horizontal-jms-bridge-two-wildfly-servers-using-activemq-artemis.html

有时有必要将不同的Message Broker连接在一起。 在企业消息传递中,此方案称为桥接。 可以使用JMS和其他协议(例如AMQP,ActiveMQ Artemis核心协议)来完成。 该博客文章重点介绍在WildFly中运行的JMS与两个Apache ActiveMQ Artemis Brokers的桥接。 什么是JMS桥? JMS桥通常用于连接不同代理或服务器上的队列和主题。 桥将... JRE-1.8 下载:https://download.csdn.net/download/qq_15769939/12115544 CSDN RocketMQ下载: https://download.csdn.net/download/qq_15769939/16091337 官网 RocketMQ下载:https:
ActiveMQ 的作用、原理是啥? ActiveMQ 的作用就是实现跨网络的习性与系统剑通信,可以将业务解耦,提供异步消息支持,增加系统并发量.比如原本执行一个操作需要1s,那么用户请求后必须等待1s之后才会得到响应,引入MQ之后,我们可以仅仅只做简单的校验流程,确认该操作可以执行时,将消耗的操作 使用 异步消息通知,并直接返回用户操作成功,而专门处理该业务的服务者监听该消息,一旦有消息之后就开始处理,用户只需要等待10ms 原理就是生产者将消息发送给 ActiveMQ 服务端,服务端会根据该消息对应的目标模型(p
#此项目已归档 这是一个相当大的旅程,但是几年之后,围绕Red Hat和Apache的 Artemis 和Docker进行了多项倡议,我决定现在该让这些项目成为该项目周围社区的焦点了,我已经一直到现在 当然,该项目将保持只读状态,您应该随意进行分叉,但我将不再进行维护。 1.什么是 ActiveMQ Artemis ? 是一个开源项目,用于 构建 多协议,可嵌入,非常高性能的集群异步消息传递系统。 Apache ActiveMQ Artemis 是面向消息的中间件(MoM)的示例。 2.什么是 ActiveMQ Artemis 舵图 图表是由描述相关的资源集的文件组成的程序包。 这些软件包位于存储库中。 这个Git仓库也是Helm仓库。 Helm软件包可以具有依赖关系,就像Debian软件包可以具有依赖关系一样,它们极大地简化了Kubernetes中复杂的分布式系统的管理。 此图表以可配置的大小引导了
存放必要的资料的存储库,以将 ActiveMQ Artemis WildFly 集成。 这些测试依赖于 ActiveMQ Artemis 集成测试test-jar。 该测试jar当前未作为 ActiveMQ Artemis 的一部分发布。 因此,您必须签出 ActiveMQ Artemis 源并在本地 构建 。 去做这个: git clone https://github.com/apache/ activemq - artemis cd activemq - artemis mvn clean install 一旦 activemq Artemis 构建 完成,就会将适当的jar添加到您的本地.m2目录中,并且您可以从 artemis - wildfly -integration目录运行测试: mvn clean test 1. 安装 stomp 库:在命令行中输入 pip install stomp 即可安装。 2. 导入 stomp 库:在 Python 代码中导入 stomp 库,例如 import stomp。 3. 创建连接: 使用 stomp.Connection() 方法创建连接,指定 ActiveMQ 的 IP 地址和端口号。 4. 连接认证:如果 ActiveMQ 配置了用户名和密码,需要 使用 connect() 方法进行认证。 5. 发送消息: 使用 send() 方法发送消息,可以将图片转换为二进制流,作为消息的内容。 6. 关闭连接: 使用 disconnect() 方法关闭连接。 注意:在发送消息时,需要指定消息的目的地(destination),可以是队列(queue)或主题(topic)。 以上是连接 ActiveMQ 传输图片的基本步骤,具体实现需要根据具体情况进行调整。