1.异常描述
[root@izwz91h49n3mj8r232gqwez bin]# pwd
/opt/dubbo/dubbo-monitor-simple-2.5.3/bin
[root@izwz91h49n3mj8r232gqwez bin]# ll
total 24
-rwxr-xr-x 1 root root 2144 Oct 23 2012 dump.sh
-rwxr-xr-x 1 root root 49 Oct 23 2012 restart.sh
-rwxr-xr-x 1 root root 413 Oct 23 2012 server.sh
-rwxr-xr-x 1 root root 815 Oct 23 2012 start.bat
-rwxr-xr-x 1 root root 2968 Dec 4 07:33 start.sh
-rwxr-xr-x 1 root root 836 Oct 23 2012 stop.sh
[root@izwz91h49n3mj8r232gqwez bin]#
启动上面的start.sh命令之后,一直启动不起来
[root@izwz91h49n3mj8r232gqwez bin]# sh start.sh
Starting the simple-monitor ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
发现 报错信息
[root@izwz91h49n3mj8r232gqwez dubbo-monitor-simple-2.5.3]# ll
total 76
drwxr-xr-x 2 root root 4096 Dec 4 07:33 bin
drwxr-xr-x 2 root root 4096 Dec 4 06:53 conf
-rw-r--r-- 1 root root 16810 Dec 4 07:19 hs_err_pid2950.log
-rw-r--r-- 1 root root 16816 Dec 4 06:50 hs_err_pid29561.log
-rw-r--r-- 1 root root 16865 Dec 4 06:54 hs_err_pid31550.log
drwxr-xr-x 2 root root 4096 Dec 4 06:42 lib
drwxr-xr-x 2 root root 4096 Dec 4 07:33 logs
[root@izwz91h49n3mj8r232gqwez dubbo-monitor-simple-2.5.3]#
hs_err_pid31550.log描述错误信息如下
[root@izwz91h49n3mj8r232gqwez dubbo-monitor-simple-2.5.3]# tail -f hs_err_pid31550.log
Memory: 4k page, physical 1883724k(89516k free), swap 0k(0k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (25.172-b11) for linux-amd64 JRE (1.8.0_172-b11), built on Mar 28 2018 21:44:09 by "java_re" with gcc 4.3.0 20080428 (Red Hat 4.3.0-8)
time: Tue Dec 4 06:54:00 2018
elapsed time: 0 seconds (0d 0h 0m 0s)
2.异常解决
上面错误信息提示为
没有足够的内存启动 监控
这个时候查看你解压出来的启动文件 vi start.sh文件就是启动文件
[root@izwz91h49n3mj8r232gqwez bin]# pwd
/opt/dubbo/dubbo-monitor-simple-2.5.3/bin
[root@izwz91h49n3mj8r232gqwez bin]# ll
total 24
-rwxr-xr-x 1 root root 2144 Oct 23 2012 dump.sh
-rwxr-xr-x 1 root root 49 Oct 23 2012 restart.sh
-rwxr-xr-x 1 root root 413 Oct 23 2012 server.sh
-rwxr-xr-x 1 root root 815 Oct 23 2012 start.bat
-rwxr-xr-x 1 root root 2968 Dec 4 07:33 start.sh
-rwxr-xr-x 1 root root 836 Oct 23 2012 stop.sh
[root@izwz91h49n3mj8r232gqwez bin]# vim start.sh
45
46 JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true "
47 JAVA_DEBUG_OPTS=""
48 if [ "$1" = "debug" ]; then
49 JAVA_DEBUG_OPTS=" -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n "
50 fi
51 JAVA_JMX_OPTS=""
52 if [ "$1" = "jmx" ]; then
53 JAVA_JMX_OPTS=" -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false "
54 fi
55 JAVA_MEM_OPTS=""
56 BITS=`java -version 2>&1 | grep -i 64-bit`
57 if [ -n "$BITS" ]; then
58 JAVA_MEM_OPTS=" -server -Xmx2g -Xms2g -Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCol lection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 "
59 else
60 JAVA_MEM_OPTS=" -server -Xms1g -Xmx1g -XX:PermSize=128m -XX:SurvivorRatio=2 -XX:+UseParallelGC "
61 fi
62
63 echo -e "Starting the $SERVER_NAME ...\c"
64 nohup java $JAVA_OPTS $JAVA_MEM_OPTS $JAVA_DEBUG_OPTS $JAVA_JMX_OPTS -classpath $CONF_DIR:$LIB_JARS com.alibaba.dubbo.container.Main > $STDOUT_FILE 2>&1 &
65
66 COUNT=0
67 while [ $COUNT -lt 1 ]; do
68 echo -e ".\c"
69 sleep 1
70 if [ -n "$SERVER_PORT" ]; then
大概58行,start.sh脚本默认的配置
-Xmx2g -Xms2g -Xmn256m
由于我的电脑只有1g的内存,所以
需要改为
-Xmx512m -Xms512m -Xmn256m
备注:
-Xms128m JVM初始分配的堆内存
-Xmx512m JVM最大允许分配的堆内存,按需分配
-XX:PermSize=64M JVM初始分配的非堆内存
-XX:MaxPermSize=128M JVM最大允许分配的非堆内存,按需分配