Dubbo远程调试
转载自:http://timerbin.iteye.com/blog/2190577
一、远程Debug
1、修改Dubbo项目下的/bin/start.sh中远程调试端口(address),保证其唯一,代码如下所示:
- JAVA_DEBUG_OPTS=""
- if [ "$1" = "debug" ]; then
- JAVA_DEBUG_OPTS=" -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=6000,server=y,suspend=n "
- fi
2、修改Dubbo项目下的/bin/restart.sh文件,并重启Dubbo服务,代码如下所示:
- ./stop.sh
- ./start.sh debug
3、window下基于Eclipse进行远程调试
二、远程Jconsole
1、修改Dubbo项目下的/bin/start.sh中远程链接端口(com.sun.management.jmxremote.port),保证其唯一,代码如下所示:
- JAVA_JMX_OPTS=""
- if [ "$1" = "jmx" ]; then
- JAVA_JMX_OPTS=" -Dcom.sun.management.jmxremote.port=6019 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false "
- fi
2、修改Dubbo项目下的/bin/restart.sh文件,并重启Dubbo服务,代码如下所示:
- ./stop.sh
- ./start.sh jmx
3、window系统基于本地JDK jconsole 对远程JVM进行监视,打开JAVA_HOME/bin/jconsole.exe ,具体使用详情如下所示:
可以对其内存、线程等信息进行监控。当然对本地的程序的性能进行监控也是可以的。