Oracle / Sun表示只要你不在生产盒上本地运行它就可以了吗? http://download.oracle.com/javase/1.5.0/docs/guide/management/jconsole.html
注意:使用jconsole监视本地应用程序对于开发和原型设计很有用,但不建议用于生产环境,因为jconsole本身会占用大量系统资源。建议使用远程监控将jconsole应用程序与受监控平台隔离开来。
您是否曾在生产环境中启用它并且遇到任何性能影响?
答案 0 :(得分:6)
尽管在生产环境中强烈建议不要这样做,但是通过以下选项启用没有身份验证或加密的远程jmx几乎没有性能影响:
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.remote.ssl=false
如果启用SSL并强制执行身份验证,则会有更多的性能成本:
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.remote.ssl=true
-Dcom.sun.management.jmxremote.password.file=jmxremote.password
以上两种方案只会在生产JVM中启动mbean服务器和RMI连接器服务器。远程连接到这个JVM会更昂贵,但这一切都取决于你观看的视图(例如,GC视图需要收集所有数据并将其传输回jConsole客户端,这不是免费的),以及操作你远程调用。
您可以从以下博文中阅读更多统计信息:
答案 1 :(得分:1)
您可以使用jconsole使用公开的JMX端口远程连接到生产服务器......但是,在不同的环境中复制场景总是更好。在那里运行jconsole ....