You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ActiveMQ Network of Brokers中broker2单向连broker1拉取消息是否可行

ActiveMQ单向主动拉取消息配置方案

完全可以实现你描述的需求,ActiveMQ 网络桥接(Network of Brokers)天然支持由安全侧的 broker2 主动向公网侧的 broker1 发起单向连接并拉取消息,无需 broker1 主动向内发起连接,完全适配你的安全策略要求。


具体配置说明

所有配置仅需在安全网络内的 broker2 侧完成,无需修改 broker1 的网络桥接配置(仅需确保 broker1 的服务端口对 broker2 的出口IP开放即可)。

1. 核心配置示例

修改 broker2 的conf/activemq.xml文件,在networkConnectors节点下添加如下配置:

<networkConnectors>
  <!-- 单向连接broker1的消息拉取连接器 -->
  <networkConnector
      name="pull_from_broker1"
      uri="static:(tcp://[broker1的公网IP/域名]:61616)"
      userName="broker1配置的连接用户名(如有认证)"
      password="broker1配置的连接密码(如有认证)"
      duplex="false"
      networkTTL="3"
      prefetchSize="500"
      dispatchAsync="true"
  >
    <!-- 可选配置:仅拉取指定队列/主题的消息,不需要全量同步可以加上 -->
    <dynamicallyIncludedDestinations>
      <queue physicalName="需要同步的业务队列名"/>
      <topic physicalName="需要同步的业务主题名"/>
    </dynamicallyIncludedDestinations>
  </networkConnector>
</networkConnectors>

2. 关键参数说明

  • uri:填写 broker1 的对外可访问地址,由 broker2 主动向该地址发起连接,完全符合安全网络仅允许向外发起请求的限制
  • duplex:设置为false,禁用双向通信,仅保留 broker2 到 broker1 的单向连接
  • prefetchSize:调整单次拉取的消息数量,可根据业务消费速度调整,实现轮询批量拉取的效果

3. 效果验证

启动 broker2 后,可在 broker1 的管控台看到来自 broker2 的消费连接,生产者发往 broker1 对应队列/主题的消息会自动同步到 broker2,安全网络内的消费者直接连接 broker2 消费即可。


内容的提问来源于stack exchange,提问作者lando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 09:54:04