哪位大哥能说说JMX主要用来干什么的?

小弟最近在看<<jmx in action>>一书,看了一章,运行了一个例子,但是不是很明白jmx主要用来干什么的,我觉得无非就是通过HTMLadapter来控制某个java对象的状态,这样做有什么好处呢?

可以用来管理远端的软件硬件。
软件,像 Weblogic 的 console,在那里你可以发布一个 EJB 也可以卸掉一个 EJB.
硬件,像电信里的网元(例如交换机),可以用你提到的 HTMLAdapter 在 web 上监控网络设备的运行状况,可以在 WEB 上停止一台设备的运行,也可以用来加入新的设备....

对于远程管理,它提供了一个管理的框架

按照我的理解:agent层的实现可以有很多种,例如
HTMLAdapter
RMIConnector
TCPAdapter
JINIConnector
等等
这一些仅仅是协议的不同,但是都能达到远程管理资源的目的。
照您所说的:发布或者卸载一个EJB或者在web上添加、停止一台设备,是不是也是修改了某个资源(这个资源,是不是就是java对象)的属性

因为网络设备大都支持 SNMP 2/3 协议,所以,你可以做一个Java 的 MBean. 用来与设备进行通信和管理。

其实JMX 的思想很简单,MBean 代表一个对象,可以是软件里的一个服务,可以是网络上的一台设备。JMX 的实现,能自动发现 MBean 的接口,并提供各种通信协议,使管理员能从远端利用这些协议,设置 MBean 的属性,调用 MBean 的方法。最终达到对软件和设备的管理。

我觉得 JMX 最大的价值就在于,它能通过多种协议对远端的服务进行管理。

iceant兄:
能不能说说目前有没有什么成功使用jmx的案例,除了weblogic、jboss等应用服务器,呵呵。
另:对于一个电子商务的j2ee系统,有没有可能使用jmx框架?

在此先谢谢iceant兄的解释~~

我发现tomcat也使用了jmx,挺强的功能

哪位大哥研究过她的原码,说说体会或则应该从哪儿着手分析

J道主页和huihoo的主页都有JMX的介绍。

如果你不想完全在J2EE容器下运行你的系统,那么你独立开发一个系统,那么这个系统推荐你使用JMX架构。