这里说下tomcat对DynamicMBean的实现和封装。利用tomcat包,可以轻松实现将自己的对象注册为MBeans。
看个例子就明白了。
package com.MBean.test;
import org.apache.tomcat.util.modeler.BaseNotificationBroadcaster;
public class DyMBeanObj extends BaseNotificationBroadcaster{
public int getConnectionNumber() {
return this.conNum ;
}
public synchronized void setConnectionNumber(int con_Num ) {
this.conNum = con_Num ;
System.out.println("Connection Number now " + this.conNum );
}
private int conNum = DEFAULT_CON_Num;
private static final int DEFAULT_CON_Num= 20;
}
package com.MBean.test;
import javax.management.*;
import org.apache.tomcat.util.modeler.Registry;
public class DyMBeanTest {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
DyMBeanObj obj = new DyMBeanObj();//将这个Object-->动态MBean
ObjectName on = null;
on = new ObjectName("com.MBeans:type=test");//此MBean的域和类型
Registry.getRegistry(null, null).registerComponent(obj, on, null);
System.out.println("Waiting for incoming requests...");
Thread.sleep(Long.MAX_VALUE);
}
}
查看运行效果,可以直接看上篇文章。
不管是DynamicMBean还是StandardMBean,都需要ObjectName,可以利用一串字符构造这个对象。
”com.MBeans:type=test“,其实就是Domain:key=value
Registry大大简化了DynamicMBean的调用,讲MBeanServer的create也封装了。
分享到:
相关推荐
tomcat-catalina-jmx-remote-9.0.5 tomcat-catalina-jmx-remote-9.0.5.jar
当你想深入学习jvm的时候,肯定会用到。用于使用jvisualvm.exe远程监控服务器jvm
Tomcat 8 Extras catalina-jmx-remote.jar,JMX监控所需文件之一。 JMX Remote Lifecycle Listener - org.apache.catalina.mbeans.JmxRemoteLifecycleListener
java项目,自己做的项目利用jmx监控weblogic,tomcat,websphere源码
通过配置tomcat/bin/catalina.sh使用。使用方法参照:https://blog.51cto.com/13700457/2397812
NULL 博文链接:https://90haofang-163-com.iteye.com/blog/1904451
cmdline-jmxclient-0.10.3.jar + zabbix tomcat监控模板
基于Alpine Linux的Tomcat SSL Oracle JDK7版本 用法 启动一个实例: docker run -d -p 8443:8443 --name tomcat-server sdd330/alpine-tomcatssl-oraclejdk 启动一个实例并挂载 webapps: docker run -d -p ...
线程组-【弱压力测试】.jmx
基于Alpine Linux的Tomcat Oracle JDK7版本 用法 启动一个实例: docker run -d -p 8080:8080 --name tomcat-server sdd330/alpine-tomcat-oraclejdk 启动一个实例并挂载 webapps: docker run -d -p 8080:8080 ...
tomcat7监控jar包,catalina-jmx-remote java-visualVM专用
catalina-jmx-remote.jar放到tomcat/lib目录下 如果是windows版本,编辑TOMCAT_HOME/bin/catalina.bat,在开头加入下面几行: set CATALINA_OPTS=%CATALINA_OPTS% -Djava.rmi.server.hostname=JMX_HOST set CATALINA...
jmx-prometheus-httpserver-0.17.2
tomcat开启远程jmx连接方式包括tomcat5 6 7 windows版本开启远程jmx连接监控
zabbix配置tomcat所需要的jmx的jar包,这里对应tomcat的8.0.36版本
NULL 博文链接:https://90haofang-163-com.iteye.com/blog/1901416
获取jmx详细参数,便与监控tomcat等还有jvm启动的java项目