最近在学习JMX相关的知识,本地管理程序相对容易做到,因为不需要配置启动参数,对于不了解如何写bat或sh文件的人来说,还是有点难度的。由于本人在日企工作,系统也是日语的,在命令行下敲命令,错误信息一堆日文,很伤...
下面我以Eclipse和JDK6作为环境来演示下JMX的远程管理:
文件1:HelloMBean.java
public interface HelloMBean {
public void setName(String name);
public String getName();
public void print();
}
文件2:Hello.java
public class Hello implements HelloMBean {
private String name = "";
@Override
public String getName() {
return name;
}
@Override
public void print() {
System.out.println("Hello, " + name + "!");
}
@Override
public void setName(String name) {
this.name = name;
}
}
文件3:JmxDemo.java
public class JmxDemo {
/**
* @param args
* @throws NullPointerException
* @throws MalformedObjectNameException
* @throws NotCompliantMBeanException
* @throws MBeanRegistrationException
* @throws InstanceAlreadyExistsException
* @throws InterruptedException
*/
public static void main(String[] args) throws InstanceAlreadyExistsException, MBeanRegistrationException, NotCompliantMBeanException, MalformedObjectNameException, NullPointerException, InterruptedException {
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
server.registerMBean(new Hello(), new ObjectName("com.jmxdemo.test2:type=Hello"));
Thread.sleep(Long.MAX_VALUE);
}
}
ok,文件都有了,建工程和包组织我就不说了,只要文件引用正确就没问题。当然这是最简单的标准MBean,您可以自己写测试用例,下面是很多新手不知道的,至少我才知道不久。
1. 在JmxDemo.java文件中,右键—>Run As—>Run Configurations...;
2. 左边选择你要执行的程序,此处是JmxDemo,在右边Name中会显示你选择的程序,Main选项卡还会显示程序所在的工程名称和执行类,确定这些后切换到Arguments选项卡;
3. 在VM arguments文本框中添加如下的参数
-Dcom.sun.management.jmxremote.port=9998
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
点击Apply,然后Run即可
4.打开命令行,输入jconsole
5.在打开的程序中选择远程连接,
地址:localhost:9998
因为不要验证,所以无需填写用户名和密码
不出意外,连接成功的话,就可以进入并管理了,在MBean选项卡中可以看到com.jmxdemo.test2这个节点,即我们要管理的对象了
分享到:
相关推荐
- **JMX连接器**: 连接器是JMX与外部世界交互的桥梁,它们允许管理应用程序通过JMX API连接到MBean Server,进行远程管理。 **2. JMX功能** - **资源监控**: 可以监控Java应用的内存使用、线程状态、类加载情况等...
在运维过程中,JMX(Java Management Extensions)监控是一个非常重要的工具,可以帮助我们实时查看和管理应用程序的状态,以及诊断和解决问题。本文将详细介绍如何使用 JMX 监控 TongWeb7。 首先,要开启 JMX 监控...
Java Management Extensions(JMX)是Java平台上的一个标准技术,用于管理和监控应用程序、服务和设备。JMX允许开发者创建管理接口,以便对运行时的组件进行动态监控和管理。在这个"jmx_examples.rar"压缩包中,包含...
学习和理解这个小例子,可以帮助你掌握如何在Java应用中实现JMX监控,包括创建自定义的管理接口,暴露应用程序的状态,以及如何远程连接和控制这些应用程序。这对于大型分布式系统的运维和故障排查尤其重要。通过...
通过JMX,开发者可以轻松地在Java应用程序中集成管理和监控的功能,从而实现对应用程序状态和服务的远程管理。 在深入探讨JMX的具体用法之前,我们首先来了解它能够带来的实际益处: 1. **动态配置**:JMX允许应用...
在本章节“JMX IN ACTION(二)”中,我们将...接下来的章节将深入探讨更复杂的JMX功能,如远程管理、安全管理以及使用标准MBeans和模型MBeans等。理解这些概念将使你能够充分利用JMX来管理和监控复杂的Java应用程序。
Agent通过各种适配器和连接器与外部环境通信,支持不同协议下的远程管理请求。 #### Protocol Adapters and Connectors JMX Agent与外部世界之间的通信依赖于Protocol Adapters和Connectors。Adapter用于基于特定...
- **远程管理示例**: - 通过具体的示例演示了如何通过 JMX Agent 远程管理 MBean 服务器。 - 包括如何查询 MBean 属性、调用操作方法等。 #### 十、高级 MBean 加载技术 - **MBean 加载机制**: - 深入探讨了 ...
JMX(Java Management Extensions)是Java平台提供的一种标准管理框架,它允许开发者创建、管理和监控应用程序和服务。在Java环境中,JMX可以用来监控系统资源、管理应用组件,并提供了一个灵活的架构来创建自定义的...
**JMX(Java Management Extensions)...无论是小规模的应用还是大型分布式系统,JMX都能提供灵活且强大的管理能力。结合JConsole和VisualVM等工具,开发者可以更直观地了解应用的运行状况,从而优化性能、排查问题。
JMX RI允许应用程序通过网络来暴露其管理功能,使得远程客户端可以监控和管理运行在不同机器上的Java应用。它实现了JMX的远程协议,使得管理操作可以在不同的Java虚拟机之间进行。 在Maven项目中,`log4j`是一个...
MBean,即Managed Bean,是在JMX(Java Management Extensions)框架中用于管理资源的一种特殊Java对象。通过MBean,可以方便地对应用程序进行监控与管理。在Java分布式应用的学习过程中,了解MBean的基本原理和使用...
Ehcache是一个开源的、高性能的缓存解决方案,广泛应用于Java应用程序中,以提高数据访问的速度和效率。本文将深入探讨Ehcache的简单监控,帮助开发者更好地理解其工作原理和性能状态。 首先,了解Ehcache的核心...
在远程监控方面,JMX(Java管理扩展)提供了丰富的功能,允许我们远程管理和监控运行中的Java应用程序。通过设置JMX的远程连接参数,我们可以让JMX工具远程连接到运行中的JVM进程。文件内容中提到的通过JVM参数设置...
此外,还可以使用JMX(Java Management Extensions)进行远程监控和管理。 九、与其他服务器集成 Tomcat可以与Apache HTTP Server等其他Web服务器集成,实现更复杂的部署架构,如使用mod_jk或mod_proxy模块将HTTP...
JMX允许应用程序暴露管理属性,从而可以远程监控和管理应用。 - **数据分析**:源代码中的算法用于处理收集到的原始数据,例如,计算CPU利用率、内存分配率等,这些数据有助于识别性能问题。 - **UI设计**:...
本篇文档详细介绍了JVM调优工具的命令使用及其相关知识点,涵盖了内存信息分析、死锁检测、JMX远程监控等方面的命令行工具的使用方法。 首先,文档提到了JPS命令,它用于查看当前运行的Java进程信息,并返回进程ID...
除了以上基本的CPU和内存信息,还可以通过`ThreadMXBean`获取线程信息,通过`GarbageCollectorMXBean`监控垃圾回收器的状态,甚至可以通过JMX连接到远程JVM获取其运行信息。Java提供的这些工具使得开发者能够对应用...
**Ehcache RMI 手动集群示例详解** Ehcache是一款广泛使用的Java缓存系统,它提供了高效、可扩展的内存缓存解决方案。在分布式环境中,为了实现数据的一致性和高可用性,Ehcache支持通过远程方法调用(RMI)进行...
- **Java Management Extensions (JMX)**: JMX 是一个框架,用于开发可管理的应用程序,特别是为大型分布式系统设计的。JMX 提供了一个框架和API,允许开发者创建、监视和管理资源。 - **Managed Beans (MBeans)**: ...