前面讲过jvisualvm 远程监控Linux下的java程序
http://blog.youkuaiyun.com/keketrtr/article/details/52292089
http://blog.youkuaiyun.com/keketrtr/article/details/52292113
但远程监控有些局限,最好能在linux本地直接启动jvisualvm
但
如果要在服务器上使用Java VisualVM, 比如CentOS。那么就出现 WARNING: environment variable DISPLAY is not set,因为一般服务器都不会装X server。我们可以在远程机器上装一个X server,比如windwos上,那么就可以非常方便的查看服务器运行情况。
可以采用 SSH + Xming 的方式, ssh用putty, xming下载地址为:http://sourceforge.net/projects/xming/
只要putty中设置X转发即可,当然也要在服务器上 /etc/ssh/ssh_config上允许x转发。(关于linux配置允许x转发,请见http://blog.youkuaiyun.com/keketrtr/article/details/53516078)
勾选 Enable X11 forwarding, X display location 中填入 localhost:0, 0意味着你的机器上的xming实例号,可以通过xlaunch来设置。
然后putty里运行 jvisualvm, 你的windows机器上自然会跳出图形界面来。这样就能查看远程服务器上Java的更详细的运行情况,比如thread,profiler选项卡都出现了。
如果通过远程连接,这些选项卡是没有的。