默认情况下,ActiveMQ使用useJmx后,jmx的url为

service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

这时,jmx的MBean server被绑死在localhost上,无法在broker所在机器以外的机器访问。

其实ActiveMQ提供了jmx相关的几个配置,不仅可以调整这个url中的ip和端口,还可以使用其他的MBean server。

属性名称 默认值 描述
useMBeanServer true 为true则避免创建一个MBeanServer,使用jvm中已有的MBeanServer
jmxDomainName org.apache.activemq jmx域,所有ObjectName的前缀
createMBeanServer true 为true则在需要时创建一个MBeanServer
createConnector true 为true则创建一个JMX connector
connectorPort  JMX connector的端口
connectorHost localhost  JMX connector和RMI server(rmiServerPort>0)的host 
rmiServerPort  RMI server的端口(便于穿过防火墙)
connectorPath /jmxrmi JMX connector注册的路径
findTigerMBeanServer true 启用或禁用查找Java 5 平台的 MBeanServer

1、可以通过修改connectorHost和connectorPort,修改掉url中的localhost:1099

例如本地的:

<managementContext>
<managementContext createConnector="true" connectorHost="10.1.1.101"/>
</managementContext>

则启动的时候显示:

INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://10.1.1.101:1098/jmxrmi

此时即可通过jconsole或jmx程序远程访问ActiveMQ:

2、也可以通过rmiServerPort指定RMI的端口,

        <managementContext>
<managementContext createConnector="true" connectorHost="10.1.1.101" connectorPort="1098" rmiServerPort="1097"/>
</managementContext>

控制台输出:

INFO | JMX consoles can connect to service:jmx:rmi://10.1.1.101:1097/jndi/rmi://10.1.1.101:1098/jmxrmi

此时url变成了

service:jmx:rmi://10.1.1.101:1097/jndi/rmi://10.1.1.101:1098/jmxrmi

这样,rmi和jmx的端口都可以自己配置了。

3、通过修改jmxDomainName可以设置MBean对象的ObjectName

参考文档:http://activemq.apache.org/jmx.html

JMX操作ActiveMQ(2)的更多相关文章

  1. JMX操作ActiveMQ(1)

    我们知道ActiveMQ broker的管理接口是通过JMX方式提供的. 一个简单的访问方式就是通过jconsole,输入 service:jmx:rmi:///jndi/rmi://localhos ...

  2. cassandra高级操作之JMX操作

    需求场景 项目中有这么个需求:统计集群中各个节点的数据量存储大小,不是记录数. 一开始有点无头绪,后面查看cassandra官方文档看到Monitoring章节,里面说到:Cassandra中的指标使 ...

  3. 消息中间件系列之Java API操作ActiveMQ

    一.依赖 <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activem ...

  4. JMX操作实例--做一回技术控

    我来做一回技术控,这部分内容也是简单的API调用例子而已,做一回技术控,发点小骚文,不过你看了,也许知道JConsole是怎么做出来的了,呵呵! 先不用管他干什么,代码运行后,自己改改自然知道做什么的 ...

  5. ActiveMQ in Action(1) - JMS

    关键字: activemq 1 JMS    在介绍ActiveMQ之前,首先简要介绍一下JMS规范.1.1 JMS的基本构件1.1.1 连接工厂    连接工厂是客户用来创建连接的对象,例如Acti ...

  6. ActiveMQ 基于zookeeper的主从(levelDB Master/Slave)搭建以及Spring-boot下使用

    0:说明 ActiveMQ 5.9.0新推出的主从实现,基于zookeeper来选举出一个master,其他节点自动作为slave实时同步消息.因为有实时同步数据的slave的存在,master不用担 ...

  7. ActiveMQ (一):安装启动及测试

    1. 预备知识 1.1 JMS JMS(Java Messaging Service)是Java平台上有关面向消息中间件(MOM)的技术规范.<百科> 1.2 JMX JMX(Java M ...

  8. activemq用户手册

    1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是客户用来创建连接的对象,例如ActiveMQ提供的ActiveMQCon ...

  9. 转--activemq的官方中文文档

    1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是客户用来创建连接的对象,例如ActiveMQ提供的ActiveMQCon ...

随机推荐

  1. LeetCode——Longest Palindromic Substring

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  2. jq toggle1.9版本后不支持解决方案

    <script type="text/javascript"> $(document).ready(function(){ $("button"). ...

  3. tornado settings想到的

    今天有足够多的时间来看看Tornado中RequestHandler和Application这两个类的关系. 昨天想要调用settings中的内容,找了好半天不知道怎么在handler中使用setti ...

  4. View & ViewData

    ViewData 似乎没啥好说的,一个向 View 传送数据的字典. ----------------------------------------------------------------- ...

  5. ReSharper 8.1支持TypeScript语言之代码检查特征

    自ReSharper 8.1发布以来,就支持TypeScript.其在TypeScript语言拼写帮助和代码完成中,几乎是一个里程碑的发展,这是令人激动的改进. 支持TypeScript效果就目前测试 ...

  6. js 实现复制粘贴文本过滤(保留文字和图片)

    实现复制粘贴文本过滤(保留文字和图片) demo如下: <head> <meta http-equiv="Content-Type" content=" ...

  7. Floodlight 启动过程分析

      1. 在Main中先是载入模块,启动REST服务,而后构建一个实现了IFloodlightProviderService接口的实例(即Controller)并执行: 2. 接下来进入Control ...

  8. C#开发157

    C#开发157条建议   编写高质量代码改善C#程序的157个建议[匿名类型.Lambda.延迟求值和主动求值] 摘要: 前言 从.NET3.0开始,C#开始一直支持一个新特性:匿名类型.匿名类型由v ...

  9. Build MySQL 5.7.4 in RedHat

    Install Cmake 1. download cmake source code at  http://www.cmake.org/files/v3.1/cmake-3.1.0.tar.gz 2 ...

  10. .NET/Mono

    C#(或者说.NET/Mono)能做的那些事 不做语言之争,只陈述事实: 1.桌面软件 不仅是在Windows上,有了开源的Mono,在Apple Mac和Linux(如:Ubuntu)上也有C#的施 ...