jmx in action 学习笔记(1)

1.1.1. 资源管理的现状

当前需要管理:

a.硬件:通过SNMP方式来检测网络设备运作是否正常。这种方式实施门槛较高。

b.软件:自行在应用上构建监控程序。这种方式对每个系统都单独一套监控实现方式,当换一种监控方式可能就要全部重写。

1.1.2. 理想的监控管理方式

具备主动处理问题的能力。不但能检测设备和应用的健康程度,还可以获取其内部信息。

但这种方式成本较高。

1.1.3.一种建议的实施方案

a. 检测设备和和平台的系统健康

b. 应用级的参数配置能力

c. 对应用统计的能力

d. 调试能力

e. 检测系统性能

1.2 java实现的解决方案——JMX(Java Management Extentions)

jmx简述:jmx是java语言的新框架,它允许你把所有资源(包括软硬件)封装成java对象,然后暴露在分布式环境中。jmx还提供了一种机制,把SNMP等已存的管理协议映射到自身的管理框架中。

jmx对之前提到的建议的实施方案中是这么实现的:

a. 检测设备和和平台的系统健康——通过java wrapper把硬件接口封装成java对象,放到jmx管理框架中。

b. 应用级的参数配置能力和对应用统计的能力——通过暴露api实现

c. 调试能力——jmx已具备。

d. 检测系统性能——jmx的消息机制。

1.2.1 jmx优势

...

1.2.2 jmx基本概念

Manageable resource:能被java访问或包装并可被JMX MBean管理的程序或设备。

MBean(Managed Bean):一种java bean,对内能访问Manageable resource,对外暴露管理接口。MBean被MBean Server接管。

MBean server:管理MBean的java类。可进行MBean的注册和找,并对外暴露管理接口(通过调用MBean,但不暴露MBean引用)。

JMX agent:MBean Server的容器。负责创建MBean关系,动态装载类等。

Protocol adapters and connectors:Agent通过适配器和连接器向不同协议或远程暴露。以获取灵活性和分布式效果。

Management application:使用Agent进行监控的程序。

Notification:MBean和MBean Server发送消息到其他MBean或其他java类。

Instrumentation:(翻译做监控设备?)通过MBean暴露resource的过程。

1.4 应用JMX架构

jmx程序架构

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章