本文主要是介绍JMX术语,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Manageable resource:
可被管理的资源可以是应用程序,设备或者存在的能够被java程序所访问或者包装的实体。通过JMX可以管理这些资源。应用程序能够暴露自己的组件,API或者附加的资源,使得JMX能够管理应用程序。可被管理的资源甚至可以是网络上的设备,例如打印机。可被管理的资源作为一个实体被JMX MBean所管理。
MBean:
MBean(managed bean)是一个Java类,符合JXM specification所规定的命名和继承规范。实例化的MBeans是Java对象,其中所暴露出来的接口(management interface)能够操作和访问manageable resources。这些接口是由MBean的属性和操作组成。
Management application通过访问MBean来访问属性和调用操作。MBean分三种类型:Standard,Dynamic和Model MBean.每一种类型都是针对于特定的manageable resource来使用的。
MBean Server:
MBean Server是一个能够管理一组MBean的java类,是JMX管理环境的核心,是一个registry(通过查找MBean来注册到MBean Server)。MBean server暴露已经注册了的MBean的management interface,但是从来不暴露对注册了的MBean的引用。另外,如果注册的MBean的类型是不同的,但是MBean Server提供给用户的是一个相同的接口,对于所有类型的MBean进行相同的处理。MBean Server也提供查找MBeans的方法,也可以注册其他的对象作为listener加到MBean上。
JMX agent:
JMX agent是一个Java process,能够为管理MBean的集合提供服务,是MBean Server的容器。这些服务可以是建立MBean的之间的关系,动态加载类,监控服务,作为计时器。
JMX agent能够拥有一个protocol adapters的集合和connectors,connectors能够使得远程的不同客户利用该agent。Protocol adapters和connectors都是Java类(通常是作为MBean存在的),能够对协议(例如:Http或者SNMP)建立映射,或者将该代理暴露给远程的连接(例如RMI或者Jini)。这意味着JMX agent能够被各种各样的管理协议和工具所用。
Protocol adapters和connectors
Protocol adapters和connectors是在JMX agent中的对象,将代理暴露给management applicaiton和protocols。例如一个将代理暴露给protocol的例子,agent中的SNMP adapter object能够将SNMP协议映射到JMX agent中。另外,一个agent可以有一个RMI connector,该connector能够让management application通过RMI clients来打开代理和management application的通路,也就是将代理暴露给management application。Protocol adapters有一个在agent之内的简单对象组成,然而connectors有一个对象在代理中,一个对象在client端。
一个代理可以有任意多个adapters和connectors,方便我们使用新的工具或者其他的以存在的管理协议和应用程序。代理能够给应用程序提供灵活的管理,我们也可以将代理分布到网络中。
Management application
一个management application可以是任何的用户程序,用于和任意多的JMX agent之间建立接口。对于一些设计好的符合JMX技术的management appliction,JMX agents能够建立和该management application的联系,JMX agents也能够建立和那些先前没有考虑用JMX技术的management application建立联系。一方面,一个兼容JMX的management application能够利用JMX的一些高级特性。令一方面,通过写定制的adapters和connectors,能够让JMX agent有和现存的non-JMX manager建立关系,举个例子:一个SNMP的manager,通过在agent中建立SNMP adapter,使得该agent能够和SNMP的manager建立关系。
Notification
Notifications是java对象,用来包装事件,报警和其他的常规信息。由MBeans和MBean Server所激发。其他的MBeans和java对象能够被注册为listener来接收notification。
Instrumentation
Instrumentation是一个通过MBean或者MBean的集合来暴露可管理的资源的process,一个应用的Instrumentation发生在开发过程中,或者开发人员建立MBeans,这些MBean用到了已有的活动系统的API。
这篇关于JMX术语的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!