服务器是阿里云的,配置是4G内核+8G内存,soft是jieqi1.7,这配置原则上应该算不错了,且数据流量也不是大,如下图,也没开启其它任何软件(如guanguan),为什么就是负载状态与CPU老是这高了,一直困扰我很久了,但苦于自己不懂PHP,也一直拖着没有动手处理, 所以今天问了一下朋友,这现象是原因造成(朋友是做PHP的 )
下面的朋友给出的建议及操作步骤
1在Xshell中使用TOP命令查看(我们看到PID2243这个mysql的进程CPU占用非常高,已经达到307%,但2243进程的内存数值占用不多,面板的主要负载应该发生在mysql的读写,占用了大量的CPU资源),首先可又根据内存大小调整MYSQL优化方案为你当前内存使用的大小,如我的是2-4GB,如果调整优化方案后负载状态仍使用率很高,我们接着往下看,
显然是MYSQL进程占用过高,所以查看MYSQL的慢日志,把MYSQL慢查询日志打开,看看是哪些语句查询 慢,他预估你那个应该是MYSQL查询慢,导致服务器负载过高
他的建议是把这两字段加都一个索引,在宝塔里安装一个phpMyAdmin软件,然后数据库中点击你的项目使用的数据列表后的【管理】
在你对应的数据表中点击allvote与postdata两字段所在的数据表,如上图,我的这表名叫xxxx_article_article,
进入此表后点击表上方的【结构】,然后把界面拉到最下方点击展开【+索引】,确认此两字段是否具体索引,没的话,参考其他的字段将该两字段新建索引,可以点击现的索引字段名前面的【编辑】看查,
新建后点击【执行】即可,然后退出MYSQL,无需重启MYSQL,此次修改不会立马见效,大概20分钟左右后,才会在宝塔界面中发现【负载状态】已经下降了,