原因是你的linux服務器的分配給這個服務的內存不夠用,可以進入monitor的bin/目錄下,找到start.sh文件,
扎到
if [ -n "$BITS" ]; then
JAVA_MEM_OPTS=" -server -Xmx2g -Xms2g -Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 "else
JAVA_MEM_OPTS=" -server -Xms1g -Xmx1g -XX:PermSize=128m -XX:SurvivorRatio=2 -XX:+UseParallelGC "
fi
修改爲
if [ -n "$BITS" ]; then
JAVA_MEM_OPTS=" -server -Xmx512m -Xms512m -Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 "
else
JAVA_MEM_OPTS=" -server -Xms1g -Xmx1g -XX:PermSize=128m -XX:SurvivorRatio=2 -XX:+UseParallelGC "
fi
原理爲:monitor的啓動內存默認爲2g的我的liunx的內存纔有1g修改爲512m就可以正常啓動了。
如果還是啓動不了的話,可以去看看你monitor得端口有沒有被佔用,去monitor的conf/文件夾找dubbo.properties
查看dubbo.jetty.port=8083的這個端口有沒有被佔用,如果被佔用可以換個端口再去啓動。
如果還不行,那就把你liunx上的沒用的服務都關閉再去啓動,這個時候就好了,我是tomcat裏面的某個組件跟他衝突了。修改後就可以了。