【引言】云服务器宝塔中开启nacos时,日志没有报错信息但是无法正常启动,这往往是云服务器的问题,或者说进程的内存问题。

【原因】以博主为例,我的云服务器只有1871MB的内存大小,但使用率达到了56%,显然内存太小,默认情况下,Nacos Server需要占用512M内存,操作系统也需要占用一定内存,然后Mysql也是吃内存的大户,所以内存是不够用的。当你Mysql启动时,Linux操作系统会杀死掉内存资源高的进程(Nacos),留给Mysql使用。这就是为什么你的Mysql一旦启动,Nacos Server的进程就会消失的原因。

【解决思路】

一、杀死内存占用率高的进程

来到终端,输入

ps -eo pid,cmd,%mem --sort=-%mem | head -n 6

查看系统内存占比前五的进程,拿到PID,根据PID杀死进程

kill xxx(PID)

二、降低nacos的内存使用率

修改nacos/bin/startup.sh,找到类似如下的配置:

if [[ "${MODE}" == "standalone" ]]; then

JAVA_OPT="${JAVA_OPT} -Xms512m -Xmx512m -Xmn256m"

JAVA_OPT="${JAVA_OPT} -Dnacos.standalone=true"

将其中的-Xms512m -Xmx512m -Xmn256m设小。

改为:-Xms256m -Xmx256m -Xmn128m
 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐