【发布时间】:2011-07-03 07:34:12
【问题描述】:
JMX 的目的是什么,它的用途是什么?我一直在浏览一些关于 JMX 的教程,他们所做的只是注册一些 Mbean 并从 jconsole 调用这些 Mbean。如果这是它的目的,那么 JMX 和 RMI(远程过程调用)有什么区别?
提前致谢!
【问题讨论】:
标签: jakarta-ee jmx java
JMX 的目的是什么,它的用途是什么?我一直在浏览一些关于 JMX 的教程,他们所做的只是注册一些 Mbean 并从 jconsole 调用这些 Mbean。如果这是它的目的,那么 JMX 和 RMI(远程过程调用)有什么区别?
提前致谢!
【问题讨论】:
标签: jakarta-ee jmx java
“远程过程调用”是一种分布式计算概念,运行在一台主机上的进程可以调用另一台远程主机上的过程。 Java 中的 RMI 是这一概念的一种实现。
MBean 是 bean 类,可以在 JMX 总线上注册以监听到达总线上的事件或在总线上发送事件或从其他参与的 Mbean 收集各种数据等。它最常用于应用服务器的健康监控等。它可以检查活动连接的数量、可用内存的数量和许多其他统计数据到分析引擎。是的,可以使用 RPC 机制远程调用它们。这对于其作为数据收集器的功能至关重要,因为在一组应用程序服务器中,必须从所有收集器中获取数据并在一个地方进行整理以进行分析。
【讨论】:
JMX 是一种通用 API,用于发布接口以监控 Java 应用程序的内部(SNMP 的 Java 版本)。
RMI 是用于远程方法调用的远程过程调用接口的 Java 特定实现,它们根本不相关。
【讨论】:
是的,在 JMX 中,我们使用 ObjectName 和 objectReference 在 mbean 服务器中注册我们的对象。然后我们可以远程更改属性或调用方法。
连接器使基于 Java 技术的远程客户端可以访问 Java 管理扩展 (JMX) 技术 MBean 服务器。连接器的许多不同实现都是可能的。特别是,用于通过客户端和服务器之间的连接进行通信的协议有很多可能性。JMX Remote API 规范定义的一些连接器是
如果您查看上述架构,连接器使用各种通信框架 (RMI, IIOP, JMS, WS-* …) 提供对 MBeanServer API 的完全远程访问,而适配器将 API 适配到另一个协议 (SNMP, …) 或基于 Web 的 GUI @987654326 @
通常我们使用 JMX 连接器连接到 MBean 服务器,但我们也可以选择其他连接器。
总而言之,JMX 是一种 Java 技术,而 RMI 是用于远程方法调用的远程过程调用接口的 Java 特定实现,可在 JMX 中用于远程通信。
【讨论】: