一、JMX的应用范围
JMX可以用来管理网络,设备,应用程序等资源,当前规范为1.1版。
二、JMX的优点
1、可以非常容易的使程序具有被管理功能
2、提供具有高度伸缩性的架构
每个JMX Agent服务可以很容易的放入到Agent中,每个JMX的实现都提供几个核心的Agent服务,你也可以自己编写服务,服务可以很容易部署,取消部署。
3、集成现有的一些管理解决方案,如SNMP
4、非常容易的利用其它java技术
5、主要提供借口,允许有不同的实现
下面这个图是JMX的结构图,通过这个图可以将JMX的层次分的更清楚些。
三、基本概念
1:MBean
通常是一个java类,它提供接口可以使这个类具有管理功能(如standard MBean,接口中定义的方法使MBean具有管理功能)。
2:MBean server
是管理MBean的一个java类,你需要向MBean server注册一个MBean后,这个MBean才会具有管理功能,MBean server还提供了查询功能和注册监听器的功能,sun提供的只是接口,不同的jmx实现中的MBean server实现也不同。
3:JMX agent
agent是为了管理一系列的MBean,而提供的一系列的服务,如上图所示,通常有MBean relationships, dynamically loading classes, simple monitoring services, timers。agent可以利用Protocol adapters(例如HTTP 和SNMP)和connectors(RMI 和Jini)使不同的客户端可以访问MBean。
4:Protocol adapters 和connectors
适配器和连接器主要使不同的协议和客户端可以使用这个agent,一个agent中可以有多个Protocol adapters 和connectors,这样管理起MBean来就更方便了(有多种类型的客户端和协议可以操作MBean)。注意,Protocol adapters 和connectors通常也是MBean。
四、MBean的类型
JMX1.1相对于1.0有了很大改进,在1.1中提供4种类型的MBean,3,4两种MBean都是特殊类型的dynamic MBean。
1:standard MBean
2:dynamic MBean
3:open MBean
4:model MBean
类型 |
描述 |
standard MBean |
这种类型的MBean最简单,它能管理的资源(包括属性,方法,时间)必须定义在接口中,然后MBean必须实现这个接口。它的命名也必须遵循一定的规范,例如我们前面的MBean为Hello,则接口必须为HelloMBean。 |
dynamic MBean |
必须实现javax.management.DynamicMBean接口,所有的属性,方法都在运行时定义 |
open MBean |
此MBean的规范还不完善,正在改进中 |
model MBean |
与 标准和动态MBean相比,你可以不用写MBean类,只需使用 javax.management.modelmbean.RequiredModelMBean即可。RequiredModelMBean实现了 ModelMBean接口,而ModelMBean扩展了DynamicMBean接口,因此与DynamicMBean相似,Model MBean的管理资源也是在运行时定义的。与DynamicMBean不同的是,DynamicMBean管理的资源一般定义在DynamicMBean 中(运行时才决定管理那些资源),而model MBean管理的资源并不在MBean中,而是在外部(通常是一个类),只有在运行时,才通过set方法将其加入到model MBean中。后面的例子会有详细介绍 |
分享到:
相关推荐
12.1.2 JMX基本概念 318 12.1.3 JMX管理应用开发 323 12.2 练习 325 12.2.1 建立JMX开发环境 325 12.2.2 创建拼词游戏程序 326 12.2.3 分布式管理扇形绘制Applet 程序 330 12.3 小结 350 第13章 让我们更专业...
12.1.2 JMX基本概念 318 12.1.3 JMX管理应用开发 323 12.2 练习 325 12.2.1 建立JMX开发环境 325 12.2.2 创建拼词游戏程序 326 12.2.3 分布式管理扇形绘制Applet 程序 330 12.3 小结 350 第13章 让我们更专业...
12.1.2 JMX基本概念 318 12.1.3 JMX管理应用开发 323 12.2 练习 325 12.2.1 建立JMX开发环境 325 12.2.2 创建拼词游戏程序 326 12.2.3 分布式管理扇形绘制Applet 程序 330 12.3 小结 350 第13章 让我们更专业...
通过这份2010年的资料,读者可以了解到JMeter的基本操作和核心概念,以及作者在当时对性能测试的理解和实践经验。随着技术的发展,JMeter也不断更新和完善,但这些基本原理和使用方法仍然是其核心,对于初学者来说...
【标题】"使用BEA WebLogic共2页.pdf" 是一个关于BEA WebLogic服务器的简短教程,可能涵盖了基础操作和关键概念。BEA WebLogic Server是Oracle公司(收购BEA后)提供的一款企业级Java应用服务器,主要用于构建、部署...
书中首先会介绍HBase的基本概念和架构,包括其分布式模型、表和行键的设计,以及数据模型和API。HBase基于Google的Bigtable设计,但针对Hadoop生态系统进行了优化,适合处理PB级别的数据。读者将了解到HRegion服务器...
3.3. AS 7.1的安全补充说明 17 3.4. 部署 20 3.5. 小结 25 4. JBoss7配置 26 4.1. 目标听众 26 4.1.1. 开始之前 26 4.1.2. 手册中的示例 26 4.2. 客户端 26 4.2.1. web接口 26 4.2.1.1. HTTP管理接入点 26 4.2.1.2. ...
首先,你需要熟悉Java、设计模式和一些基本的编程概念。Spring源码大量使用了工厂模式、代理模式、观察者模式等经典设计模式。其次,理解IoC(控制反转)和DI(依赖注入)是至关重要的,它们是Spring的核心特性。...