ActiveMQ_7JMX

来源:https://www.cnblogs.com/zhiboluo/archive/2018/12/14/10117638.html
-Advertisement-
Play Games

activemq配置jmx 配置activemq中的jmx可以用於監控activemq信息。 activemq.xml配置 修改broker屬性 添加節點managementContext <managementContext> <managementContext createConnector= ...


activemq配置jmx

       配置activemq中的jmx可以用於監控activemq信息。

 

activemq.xml配置

       修改broker屬性

 

       添加節點managementContext

<managementContext>

            <managementContext createConnector="true" connectorPort="1099" connectorPath="/jmxrmi" jmxDomainName="myDomain"/>

        </managementContext>

 

activemq啟動項配置

ACTIVEMQ_SUNJMX_START="-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false \

    -Dcom.sun.management.jmxremote.rmi.port=1099 \

    -Dcom.sun.management.jmxremote.authenticate=false \

    -Djava.rmi.server.hostname=192.168.114.129"

 

jconsole連接測試

 

 

java連接測試

public class QueueList {

    private static String connectorPort="1099";

    private static String connectorPath="/jmxrmi";

    private static String jmxDomain="myDomain";

   

    @Test

    public void getQueueInfoList() throws Exception{

       LocateRegistry.createRegistry(1099);

       JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://192.168.114.129:"+connectorPort+connectorPath);   

       JMXConnector connector = JMXConnectorFactory.connect(url);

       connector.connect();

       MBeanServerConnection connection = connector.getMBeanServerConnection();

       ObjectName name = new ObjectName(jmxDomain+":type=Broker,brokerName=broker1");

       BrokerViewMBean mBean = MBeanServerInvocationHandler.newProxyInstance(connection, name, BrokerViewMBean.class, true);   

       System.out.println("-----queue數:"+mBean.getQueues().length);

       if(mBean != null){

           for(ObjectName na: mBean.getQueues()){

              QueueViewMBean qBean = MBeanServerInvocationHandler.newProxyInstance(connection, na, QueueViewMBean.class, true);

              System.out.println("--------------->");

              System.out.println("消息隊列名稱:"+qBean.getName());

              System.out.println("隊列中剩餘的消息數:"+qBean.getQueueSize());

              System.out.println("消費者數:"+qBean.getConsumerCount());

              System.out.println("出隊數:"+qBean.getDequeueCount());

              System.out.println("入隊列數:"+qBean.getEnqueueCount());

           }

       }

       System.out.println("-----topic數:"+mBean.getTopics().length);

       if(mBean != null){

           for(ObjectName na: mBean.getTopics()){

              QueueViewMBean qBean = MBeanServerInvocationHandler.newProxyInstance(connection, na, QueueViewMBean.class, true);

              System.out.println("--------------->");

              System.out.println("消息隊列名稱:"+qBean.getName());

              System.out.println("隊列中剩餘的消息數:"+qBean.getQueueSize());

              System.out.println("消費者數:"+qBean.getConsumerCount());

              System.out.println("出隊數:"+qBean.getDequeueCount());

             

           }

       }

    }

}

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 這裡是修真院前端小課堂,每篇分享文從 【背景介紹】【知識剖析】【常見問題】【解決方案】【編碼實戰】【擴展思考】【更多討論】【參考文獻】 八個方面深度解析前端知識/技能,本篇分享的是: 【px、em、rem、%、vw、wh、vm等單位有什麼區別?】 1.背景介紹傳統的項目開發中,我們只會用到px、%、 ...
  • 最近在IE10下運行一個以前的做web系統發現了兩個小問題: 一、圖片上使用"alt"屬性來添加一些文字提示信息在IE10下無法正常顯示出來 上網查了一下原因:原來是現在一些較新的瀏覽器,比如在IE9、IE10使用"alt"屬性時,在圖片能夠正常顯示的情況下,在圖片中設置"alt"屬性的值將不會顯示 ...
  • 聲明 本篇內容梳理自以下幾個來源: "Github:smyhvae/web" "Bootstrap網站的 less 文檔" "Sass中文網" 感謝大佬們的分享。 正文 CSS預處理(less&Sass) CSS預處理 什麼是 CSS 預處理?為什麼要有 CSS 預處理? 這裡就講講這兩個問題,寫過 ...
  • 來源:http://www.fhadmin.org/webnewsdetail3.html 前臺:支持(5+1[時尚單頁風格])六套模版,可以在後臺切換 官網:www.fhadmin.org 系統介紹: 1.網站後臺採用主流的 SSM 框架 jsp JSTL,網站後臺採用freemaker靜態化模版 ...
  • 作者按:《每天一個設計模式》旨在初步領會設計模式的精髓,目前採用 和`python`兩種語言實現。誠然,每種設計模式都有多種實現方式,但此小冊只記錄最直截了當的實現方式 :) 原文地址是: "《每天一個設計模式之命令模式》" 歡迎關註個人技術博客: "godbmw.com" 。每周 1 篇原創技術分 ...
  • 迭代器模式,Iterator,java集合框架內置的一種模式,本文介紹了迭代器模式的起源含義,設計意圖,以及結構形態,並且給出了Java版本的迭代器模式的實現,迭代器模式分為內部迭代和外部迭代,Java集合框架使用的這種形式是比較好的一種方式。 ...
  • 一. Python程式中, 文件的處理步驟是什麼? 二. 文本打開時設置的模式有哪些? 分別代表什麼意思? 三. os模塊中提供的常用文件操作? 四. 代碼實現: 大文件拷貝操作 註意: 不能一次性讀取大文件內容, 容易造成記憶體峰值 五. 代碼實現: 假設一個文件夾中有很多不同格式的文件, 要求: ...
  • 126.Struts2中的攔截器有什麼用?列舉框架提供的攔截器名稱? 127.Struts2有哪些優點? 128.ActionContext和ValueStack什麼時候創建?是否是線程安全的? 129.一個請求在Struts2框架中的處理大概分為幾個步驟? 130.介紹一下Struts的Actio ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...