【center】center_server进程CPU消耗过高

问题版本:

center4.9.2.5之前(当前已发布所有版本都可能出现)

问题现象/报错:

center_server服务消耗CPU特别高,个别项目可以到700%多。出现这个问题时,控制台在web页面操作时相应非常慢。

排查思路/解决方案:

测试部已经复现问题,但没有确定问题原因,重启center_server服务可以恢复。

当前项目遇到可以临时使用脚本定时任务,定时检查CPU消耗如果过高则重启服务。

参考shell脚本内容如下

#servers中定义需要监控的服务,可以根据需要增加或减少服务(服务名和进程名一致适用)
servers=(“center_server” “mqttserver”)
proc_cpu(){
    cpupercent=$(top -b -n 1 |grep $1 |awk ‘{print $9}’|awk -F “.” ‘{print $1}’)
#if判断CPU消耗超过50%则重启服务
    if [ “$cpupercent” -ge 50 ]; then
        systemctl restart “$1”
        echo “$(date +%Y/%m/%d\ %T) :$1 cpu:$cpupercent%,Restarted” >> /tmp/AuditsysCPU.log
    fi
}
for proc_name in “${servers[@]}”;do
    proc_cpu “${proc_name}”
done