JMX

jmx architecture

instrumentation level   设备层
agent level  代理层
distributed level 分发层

图:1


instrumentation level:
jmx定义了instrumentation level如何去定义资源以被管理。
实现了instrumentation的接口称为managed bean 或MBean.

定义MBean:
1.实现MBean interface
2.实现DynamicMBean

实现自己MBean接口的类称为标准MBean(standard MBean)
Standard MBean可以通过属性、方法修改其内容。
属性通过get,set方法。

MBean interface:
Mbean interafce为 类名+MBean,如MyClass,其MBean定义为MyClassMBean

DynamicMBean interface:
getMBeanInfo(): MBeanInfo
getAttribute( attribute:String ): Object
getAttributes( attributes:String[] ): AttributeList
setAttribute( attribute:Attribute ): void
setAttributes( attributes:AttributeList ): AttributeList
invoke( actionName:String,params:Object[],signature:String[] ): Object


Standard MBean 继承模式:
B类无MBean,通过继承A类得到AMBean的接口。

B类有MBean接口,则通过继承A,也无法得到AMBean的接口
(以下待测试,B既实现了BMbean接口,又继承A类)
AMBean <- BMBean
A <- B
则B只继承BMBean的内容,对AMBean无关系

DynamicMBean 继承模式类似Standard MBean,通过继承A类得到getters/setters接口。


实践:
1.下载demo,javac编译后运行
2.打开jconsole,打开MBean窗口,可以进行参数调用,属性修改。

notification:

javax.management.AttributeChangeNotification[source=com.example.mbeans:type=Hello][type=jmx.attribute.change][message=CacheSize changed]

 


 资料:
1.JMX_1_4_specification.pdf
2.jmx doc tutorial
3. Java Dynamic Management Kit 5.1 Tutorial:http://docs.sun.com/app/docs/doc/816-7609

posted on 2009-12-24 10:56 江永源blog 阅读(153) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

常用链接

随笔档案(1)

文章分类(1)

文章档案(9)

最新随笔

积分与排名

最新评论