java activemq jmx_通過JMX 獲取Activemq 隊列信息

首先在 activemq.xml 中新增以下屬性

在broker 節點新增屬性?useJmx="true"

在managementContext 節點配置斷開與訪問服務iP

配置成功后啟動

下面來看測試代碼

/**

* @Title: ActivemqTest.java

* @Package activemq

* @Description: TODO(用一句話描述該文件做什么)

* @author LYL

* @date 下午2:25:59

* @version V1.0

*/

package activemq;

import java.io.IOException;

import java.net.MalformedURLException;

import java.util.HashMap;

import java.util.Map;

import javax.management.MBeanServerConnection;

import javax.management.MBeanServerInvocationHandler;

import javax.management.ObjectName;

import javax.management.remote.JMXConnector;

import javax.management.remote.JMXConnectorFactory;

import javax.management.remote.JMXServiceURL;

import org.apache.activemq.broker.jmx.BrokerViewMBean;

import org.apache.activemq.broker.jmx.QueueViewMBean;

/**

* @Title: ActivemqTest.java

* @Package activemq

* @Description: TODO(用一句話描述該文件做什么)

* @author LYL

* @date 下午2:25:59

* @version V1.0

*/

public class ActivemqTest {

public static void main(String[] args) throws Exception {

String ip = "127.0.0.1:8188";

String url = String.format("service:jmx:rmi:///jndi/rmi://%s/jmxrmi",ip);

Map credentials = new HashMap<>();

// credentials.put(JMXConnector.CREDENTIALS, new String[] {"admin", "admin"});

JMXServiceURL urls = new JMXServiceURL(url);

JMXConnector connector = JMXConnectorFactory.connect(urls,credentials);

connector.connect();

MBeanServerConnection conn = connector.getMBeanServerConnection();

ObjectName name = new ObjectName("org.apache.activemq:brokerName=localhost,type=Broker");

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

ObjectName[] pAry = mBean.getQueueSubscribers();

for (ObjectName objectName : pAry) {

}

ObjectName[] ary = mBean.getQueues();

for (ObjectName objectName : ary) {

QueueViewMBean queueBean = (QueueViewMBean) MBeanServerInvocationHandler.newProxyInstance(conn, objectName, QueueViewMBean.class, true);

System.out.println("隊列的名稱:"+queueBean.getName());

System.out.println("消息積壓數:"+queueBean.getQueueSize());

System.out.println("入隊:"+queueBean.getEnqueueCount());

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

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

System.out.println("生產者數:"+queueBean.getProducerCount());

}

}

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392426.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392426.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392426.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

風能matlab仿真_發現潛力:使用計算機視覺對可再生風能發電場的主要區域進行分類(第1部分)

風能matlab仿真Github Repo: https://github.com/codeamt/WindFarmSpotterGithub回購&#xff1a; https : //github.com/codeamt/WindFarmSpotter This is a series:這是一個系列&#xff1a; Part 1: A Brief Introduction on Leveraging Edge Devices and Embedded AI to …

【Leetcode_easy】821. Shortest Distance to a Character

problem 821. Shortest Distance to a Character 參考 1. Leetcode_easy_821. Shortest Distance to a Character; 完轉載于:https://www.cnblogs.com/happyamyhope/p/11214805.html

tdd測試驅動開發課程介紹_測試驅動開發的實用介紹

tdd測試驅動開發課程介紹by Luca Piccinelli通過盧卡皮奇內利 測試驅動開發很難&#xff01; 這是不為人知的事實。 (Test Driven Development is hard! This is the untold truth about it.) These days you read a ton of articles about all the advantages of doing Test …

軟件安裝(JDK+MySQL+TOMCAT)

一&#xff0c;JDK安裝 1&#xff0c;查看當前Linux系統是否已經安裝了JDK 輸入 rpm -qa | grep java 如果有&#xff1a; 卸載兩個openJDK&#xff0c;輸入rpm -e --nodeps 要卸載的軟件 2&#xff0c;上傳JDK到Linux 3&#xff0c;安裝jdk運行需要的插件yum install gl…

leetcode 205. 同構字符串(hash)

給定兩個字符串 s 和 t&#xff0c;判斷它們是否是同構的。 如果 s 中的字符可以被替換得到 t &#xff0c;那么這兩個字符串是同構的。 所有出現的字符都必須用另一個字符替換&#xff0c;同時保留字符的順序。兩個字符不能映射到同一個字符上&#xff0c;但字符可以映射自己…

Java core 包_feilong-core 讓Java開發更簡便的工具包

## 背景在JAVA開發過程中,經常看到小伙伴直接從網上copy一長段代碼來使用,又或者寫的代碼很長很長很長...**痛點在于:*** 難以閱讀* 難以維護* sonar掃描結果債務長* codereview 被小伙伴鄙視* ....feilong-core focus on J2SE,是[feilong platform](https://github.com/venusd…

TensorFlow 2.X中的動手NLP深度學習模型準備

簡介&#xff1a;為什么我寫這篇文章 (Intro: why I wrote this post) Many state-of-the-art results in NLP problems are achieved by using DL (deep learning), and probably you want to use deep learning style to solve NLP problems as well. While there are a lot …

靜態代碼塊

靜態代碼塊 靜態代碼塊&#xff1a;定義在成員位置&#xff0c;使用static修飾的代碼塊{ }。位置&#xff1a;類中方法外。執行&#xff1a;隨著類的加載而執行且執行一次&#xff0c;優先于main方法和構造方法的執行。格式&#xff1a;作用&#xff1a; 給類變量進行初始化賦值…

異步api_如何設計無服務器異步API

異步apiby Garrett Vargas通過Garrett Vargas 如何設計無服務器異步API (How To Design a Serverless Async API) I recently ran a workshop to teach developers how to create an Alexa skill. The workshop material centered around a project to return car rental sear…

C# 序列化與反序列化json

與合作伙伴討論問題&#xff0c;說到的c與c#數據的轉換調用&#xff0c;正好就說到了序列化與反序列化&#xff0c;同樣也可用于不同語言間的調用&#xff0c;做了基礎示例&#xff0c;作以下整理&#xff1a; 1 using System.Data;2 using System.Drawing;3 using System.Linq…

學java 的要點_零基礎學Java,掌握Java的基礎要點

對于程序員群體來說&#xff0c;了解一定的技巧會對學習專業技能更有幫助&#xff0c;也更有助于在自己的職業發展中處于有利地位&#xff0c;無限互聯Java培訓專家今天就為大家總結Java程序員入門時需要掌握的基礎要點&#xff1a;掌握靜態方法和屬性靜態方法和屬性用于描述某…

實驗人員考評指標_了解實驗指標

實驗人員考評指標In the first part of my series on experimental design Thinking About Experimental Design, we covered the foundations of an experiment: the goals, the conditions, and the metrics. In this post, we will move away from the initial experimental…

leetcode 188. 買賣股票的最佳時機 IV(dp)

給定一個整數數組 prices &#xff0c;它的第 i 個元素 prices[i] 是一支給定的股票在第 i 天的價格。 設計一個算法來計算你所能獲取的最大利潤。你最多可以完成 k 筆交易。 注意&#xff1a;你不能同時參與多筆交易&#xff08;你必須在再次購買前出售掉之前的股票&#xf…

kotlin編寫后臺_在Kotlin編寫圖書館的提示

kotlin編寫后臺by Adam Arold亞當阿羅德(Adam Arold) 在Kotlin編寫圖書館的提示 (Tips for Writing a Library in Kotlin) Writing a library in Kotlin seems easy but it can get tricky if you want to support multiple platforms. In this article we’ll explore ways f…

1.Swift教程翻譯系列——關于Swift

英文版PDF下載地址http://download.csdn.net/detail/tsingheng/7480427 我本來是做JAVA的。可是有一顆折騰的心&#xff0c;蘋果公布Swift以后就下載了蘋果的開發文檔。啃了幾天。朦朦朧朧的看了個幾乎相同&#xff0c;想靜下心看能不能整個翻譯出來。我英語一般般&#xff0c;…

核心技術java基礎_JAVA核心技術I---JAVA基礎知識(集合set)

一&#xff1a;集合了解(一)確定性&#xff0c;互異性&#xff0c;無序性確定性&#xff1a;對任意對象都能判定其是否屬于某一個集合互異性&#xff1a;集合內每個元素都是無差異的&#xff0c;注意是內容差異無序性&#xff1a;集合內的順序無關(二)集合接口HashSet&#xff…

nba數據庫統計_NBA板塊的價值-從統計學上講

nba數據庫統計The idea is not to block every shot. The idea is to make your opponent believe that you might block every shot. — Bill Russel這個想法不是要阻止每一個鏡頭。 這個想法是讓你的對手相信你可能會阻擋每一個投籃。 —比爾羅素 The block in basketball ha…

leetcode 330. 按要求補齊數組(貪心算法)

給定一個已排序的正整數數組 nums&#xff0c;和一個正整數 n 。從 [1, n] 區間內選取任意個數字補充到 nums 中&#xff0c;使得 [1, n] 區間內的任何數字都可以用 nums 中某幾個數字的和來表示。請輸出滿足上述要求的最少需要補充的數字個數。 示例 1: 輸入: nums [1,3], …

【煉數成金 NOSQL引航 三】 Redis使用場景與案例分析

驗證redis的主從復制&#xff0c;將實驗過程抓圖 復制配置文件 更改slave的端口 和相關master配置 主從復制測試 研究在OAuth中的“一次數”nonce有什么用途&#xff1f;怎樣使用&#xff1f;以此熟悉OAuth的全流程 nonce &#xff0c;一個隨機的混淆字符串&#xff0c;僅僅被…

SQL Server需要監控哪些計數器 ---指尖流淌

http://www.cnblogs.com/zhijianliutang/p/4174697.html轉載于:https://www.cnblogs.com/zengkefu/p/7044095.html