JMX是SUN提出的一套标准,可以为应用程序植入管理的功能(所谓管理功能就是通过这套标准可以对应用程序的任何一个资源进行维护,即包括配置文件、属性文件也包括对象,使用这套标准的好处就是可以在不重启服务的情况下,达到相关内容修改的效果)。
JMX的架构是由三部分组成:分别是Instrumentation Level(资源植入层),Agent Level(代理层),Manager Level(管理层)。
1.Instrumentation Level主要是负责创建符合JMX管理标准的资源。(说白了就是让被管理的资源实现MBean接口,例如:需要管理Person这个类,那么一定要有一个PersonMBean接口,Person类实现PersonMBean接口,证明Person可以发布为被管理的资源)。
2.Agent Level主要的组件式MBeanServer,MBeanServer负责注册以及解除注册MBeans,其内部是通过HashMap来维护所有的MBean,这个HashMap可以跨虚拟机访问,甚至可以通过RMI以及Http跨网络访问。
3.Manager Level该层也称工具层,可以自行开发,或者通过JDK自带的jconsole或者web方式来管理MBean。