java – 访问在HTTP代理服务器后面运行的启用JMX的应用程序

我有一个支持JMX的Java应用程序(Java 1.5),它位于HTTP代理服务器后面.所以我无法通过JConsole直接访问它.

我想要的解决方案是在我的应用程序中安装一个VM内JMX客户端,它从JMX服务器收集统计信息和配置数据,并通过代理定期通过HTTP将其发布到我的外部服务器.如果需要,我的外部服务器会回复任何配置更改,并且in-VM JMX客户端会将这些更改传播到将其应用于应用程序的JMX服务器.

我猜这是一个频繁到足以让解决方案解决它的方案.是否有任何帮助框架/库通过HTTP启用此类访问?

解决方法:

不确定这是你需要的,但有一个非常好的JMX到REST桥,叫做Jolokia.如果将其添加到应用程序中,您将能够通过REST接口与JMX交互,该接口可通过HTTP代理访问,就像任何其他HTTP流量一样.因此,您不仅通过HTTP隧道化JMX,而且还以更好的格式(JSON over HTTP)公开它.

它有相当不错的documentation,也见到我的showcase.

上一篇:使用jmx和java 5以编程方式获取堆信息


下一篇:java – 与Tomcat JMX服务器连接失败