`

JMX 基础及实例

阅读更多
JMX Java Management Extensions

  Manageable resource:
   可以被管理的资源可以是应用程序,设备或者存在的能够被java程序所访问或者包装的实体。通过JMX可以管理这些资源,应用程序能够暴露自己的组件,API或者附加的资源,使得JMX能够管理应用程序。
  MBean Managed Bean
  是一个java类 是符号jmx specification 所规定的命名和继承规范

   动态 Mbeans 可在运行时定义属性和操作。这能力允许 Mbean 在装载时动态配置自己或根据它所处环境改变它的属性和操作


下面用一个案例来验证一下(是引用已经验证)
1.建立MBean
public interface HelloMBean {
//operations

public void sayHello();
public int add(int x,int y);
//attributes
//a read-only attribute called Name of type String

public String getName();
// a read-write attribute called CacheSize of type int
public int getCacheSize();
public void setCacheSize(int size);

}

2.建立实现MBean的类


public class Hello implements HelloMBean{
private final String name = "Reginald";   
    private int cacheSize = DEFAULT_CACHE_SIZE;   
    private static final int DEFAULT_CACHE_SIZE = 200;
   
   
public int add(int x, int y) {
// TODO 自动生成方法存根
return x+y;
}

public int getCacheSize() {
// TODO 自动生成方法存根
return this.cacheSize;
}

public String getName() {
// TODO 自动生成方法存根
return this.name;
}

public void sayHello() {
// TODO 自动生成方法存根
System.out.println("hello,world");
}

public synchronized void setCacheSize(int size) {
// TODO 自动生成方法存根
this.cacheSize=size;
}

}
3.客户端代码
import java.lang.management.*;   
import javax.management.*;   
  
import com.sun.jdmk.*;
import com.sun.jdmk.comm.HtmlAdaptorServer;
public class Main {

/**
* @param args
* @throws NullPointerException
* @throws MalformedObjectNameException
* @throws NotCompliantMBeanException
* @throws MBeanRegistrationException
* @throws InstanceAlreadyExistsException
*/
public static void main(String[] args) throws MalformedObjectNameException, NullPointerException, InstanceAlreadyExistsException, MBeanRegistrationException, NotCompliantMBeanException {
// TODO 自动生成方法存根
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();   
final HtmlAdaptorServer htmlAdaptor = new HtmlAdaptorServer();  
final ObjectName htmlAdaptorON = new ObjectName("com.example.mbeans:name=HtmlAdaptor");    
mbs.registerMBean(htmlAdaptor, htmlAdaptorON);    
         htmlAdaptor.setPort(9999);    
         System.out.print("Starting the HtmlAdaptor....");    
         htmlAdaptor.start();   
}

}
附这里如果没有在classpath中引入jdmkrt.jar 找不到com.sun.jdmk.comm.HtmlAdaptorServer

4.运行上面的java代码
控制台信息:Starting the HtmlAdaptor....
5.在浏览器中输入
http://localhost:9999/
这时候你就可以看见一个打开的网页,现在你就可以利用这个网页来进行MBean的管理了!
  • jdmkrt.jar (1017.6 KB)
  • 描述: jdmkrt.jar
  • 下载次数: 719
分享到:
评论

相关推荐

    jmx简单实例,附带jar包完整项目

    1. **JMX基础** JMX由三部分组成:MBeans(Managed Beans)、Servers和Agents。MBeans代表管理的对象,可以是任何Java对象,它们提供了关于对象状态的信息和对这些对象的操作。MBean Server是管理对象的核心组件,...

    书籍JMX-IN-ACTION

    这本书通过实例详细解释了JMX的工作原理和应用方法,旨在帮助读者提高系统管理和自动化运维的效率。 书中首先介绍了JMX的基本概念,包括MBean(管理bean)、MBean服务器、代理和通知等核心元素,以及它们在JMX架构...

    最简单JMX例子

    通过学习这个例子,你可以理解JMX的基本结构和用法,为更复杂的监控和管理任务打下基础。 在实际应用中,JMX广泛应用于服务器监控、日志管理、性能统计等方面,是Java开发者必备的一项技能。对于"JMX MBA十日读"这...

    JMX基础知识

    ### JMX基础知识详解 #### 一、JMX概念解析 JMX(Java Management Extensions)是一种为应用程序提供管理和监控功能的标准框架。它通过一系列接口、工具和技术来帮助开发者为Java应用程序添加管理和监控的能力。 ...

    JMX 在GlassFish中的应用

    AMX在保留JMX原有的优势基础上,增加了更多的面向对象特性和简化了MBean的开发过程,使得在GlassFish环境中管理和监控应用变得更加直观和高效。 #### JMX的基本概念 - **MBeans**:这是JMX的核心组成部分,用来...

    JMX实战

    **概述**:这部分内容重点介绍了构建JMX基础架构的关键技术和步骤。 **详细解释**: - **MBean的设计原则**:设计MBean时需要考虑其可扩展性、易用性和安全性等方面。 - **MBean服务器的配置**:MBean服务器是JMX...

    JMX开发入门

    通过了解这些基础知识,开发者可以开始构建自己的JMX解决方案,监控和管理Java应用,提升系统的可维护性和可扩展性。例如,Spring框架提供了对JMX的集成支持,简化了在Spring应用中使用JMX的复杂性。总的来说,JMX因...

    JMX.rar_jmx_osgi

    1. **JMX基础**:JMX的核心概念包括MBeans(Managed Beans)、Management Agents(MBeans Server)和Connectors。MBeans是可管理的对象,它们代表了应用程序中的资源或服务。MBeans Server是一个管理代理,负责注册...

    jmx入门

    本文将深入介绍JMX的基础知识,包括其核心概念、如何创建MBeans、以及如何通过JMX代理来访问和操作MBeans。 **一、JMX核心概念** 1. **MBeans**: MBean是JMX中的基本组件,它是可管理的对象,代表了系统的某个方面...

    7.Coherence企业级缓存(六) JMX 管理和监控.pdf

    #### JMX Server监控实例 一旦JMX Server启动并配置完成,可以通过JConsole或其他JMX客户端工具进行连接,以可视化的方式监控整个Coherence集群。监控界面通常包含以下几部分: 1. **集群视图**:展示整个集群的...

    JMX IN ACTION(四)

    4.1 奠定MBean基础 在深入讨论编写标准MBean之前,我们首先需要描述跨越所有MBean类型所需的某些共同特性。无论你是在编码标准MBean还是动态MBean,都必须遵循以下规则: 4.1.1 所有MBean的通用编码规则 开发任何...

    jmx开发例子,包括与spring结合例子

    1. **JMX基础**: - **MBeans**:JMX的核心组件,是可管理的Java对象,代表了被管理的资源或服务。 - **MBeanServer**:管理MBeans的服务器,负责注册、查询和操作MBeans。 - **Management Interface**:MBeans...

    jmx第一个学习例子

    标题和描述均提到了“jmx第一个学习例子”,这标志着文章旨在引导读者通过一个实践性的示例理解Java Management Extensions(JMX)的基础概念和技术。JMX作为一项由Sun Microsystems(现Oracle)提出的技术,用于...

    wildfly9 多实例的配置实例(有说明)

    此外,监控和日志管理也是多实例部署中的关键环节,可以通过JMX接口或者第三方工具实现。 通过这种方式,你可以轻松地管理和扩展Wildfly9的多实例环境,以满足不断增长的业务需求。记住,每个实例的配置和管理都...

    JMX_1_3_specification

    JMX规范还讨论了如何在不同的Java虚拟机(JVM)实例之间进行通信,以及如何在不同的平台和应用程序之间使用JMX技术进行统一的管理和监控。规范中还定义了测试和兼容性工具包(TCK),用于确保第三方的实现符合JMX...

    JMX初学资料 初学者入门教程

    “新建 文本文档.txt”可能是一份简单的文本教程,介绍JMX的基础知识或实践指导。至于“一起分享 一起成长 - goCom - SOA中国第一社区.files”可能是一个目录,包含与社区相关的其他文件或资源。 总的来说,JMX为...

    java做的监控应用实例 初学者很好的实例

    本实例针对初学者,将介绍如何使用Java构建一个简单的监控应用程序,帮助你理解基础概念并逐步深入实践。 首先,我们要了解Java监控的基本概念。Java提供了一个名为JMX(Java Management Extensions)的框架,它...

    JMX IN ACTION(三)

    1. 创建一个MBean服务器:这是管理的基础,MBean服务器负责管理和实例化MBeans。 2. 提供连接性:像HelloAgent一样,JMXBookAgent类也需要创建一个HTML适配器,使得你可以查看和交互在代理上注册的MBeans。此外,你...

    jmx_in_action随书源码

    3. **通知机制**:JMX支持发布和订阅通知,源码可能包含如何发送和接收通知的实例,这对于实时监控和报警系统至关重要。 4. **JMX连接器**:JMX连接器允许远程访问MBeanServer,源码可能会演示如何设置和使用RMI、...

Global site tag (gtag.js) - Google Analytics