对于以恒定间隔执行操作的简单Java库,我使用MXBeans实现了JMX管理,它按预期工作,我可以在JConsole中查询状态和设置参数,提升/恢复操作等。
现在我想创建一个Web应用程序 - 显示和控制库操作。
我不知道在Web应用程序中使用samy JMX API是个好主意,因此我需要一种方法来访问使用平台MBean Server在同一VM中注册的MXBeans:
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
我注意到MBeanServer有一个queryMBeans方法。我应该使用此方法来访问已注册的JMX API MXBeans吗?使用JMXConnectorFactory有一个不同的路径,它需要协议,主机和端口信息,以便客户端可以访问远程JMX服务器。
答案 0 :(得分:12)
如果您只想访问同一JVM中的MBeanServer,那么ManagementFactory.getPlatformMBeanServer();
就是这样做的。
JMXConnectorFactory
用于访问远程MBeanServers(即在不同的JVM和/或不同的主机上)。