• JMX操作ActiveMQ(2)


    默认情况下,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 1099  JMX connector的端口
    connectorHost localhost  JMX connector和RMI server(rmiServerPort>0)的host 
    rmiServerPort 0  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


  • 相关阅读:
    C#移动及改变控件大小
    flutter学习(状态组件,组件)
    dart学习1
    rn的优化
    git命令
    Immutable
    树形数据结构的搜索功能
    promise
    js出场率极高的代码
    js浮点数计算精度解决方案
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3167747.html
Copyright © 2020-2023  润新知