你是不是遇到过打开宝塔面板,一看负载100%,CPU100%,内存100%,提示运行堵塞,网站无法打开或加载很慢、甚至宝塔面板后台都打不不开。这时候内心是不是很崩溃很堵塞,开始怀疑自己网站是不是中了什么木马病毒、挖矿后门,服务器配置太垃圾等等。那我们怎么来让服务器运行回归到正常状态。以下是总结的几种常见排查方法及解决方案,可以都试一试。尝试有风险,一定要提前备份下数据库、网站文件!
一、查找原因
当我们发现网站无法打开,在宝塔面板或者服务器后台,查看发现CPU100%的时候,首先要做的就是先查找原因,到底是什么导致了服务器CPU100%过载。
最简单的方法是,SSH连接服务器,打开Linux命令窗口,输入【top】命令,可以看到是哪个进程占用CPU的比率最高,最可能导致服务器CPU奔溃。
Linux top命令:top是Linux较为常用的命令,可以监控服务器的CPU、内存、进程的运行情况
二、常见原因及解决方案
1.宝塔安装了不常用的应用软件,占用服务器资源
1.1不常用的应用,如一键部署、宝塔跑分、宝塔一键迁移、宝塔运维等。只要安装启用就会占用服务器内存,增加负载。建议是卸载,使用的时候再安装。我们只需要保留几款服务器必须的应用就好。
1.2宝塔开启监控也是很吃服务器资源的,如果非必要、服务器配置较低,建议关闭监控功能。
2.MySQL问题
2.1优化MySQL配置之优化方案。选择和服务器内存相匹配的优化方案。在MySQL中设置性能调整。
2.2清除MySQL日志。过多的日志也会导致资源占用,建议进行清空。
3.PHP问题
3.1服务器上同时安装了多个版本的PHP,比如PHP5.6、PHP7.0、PHP7.3、PHP7.4。未使用的PHP程序也占用服务器资源。尽量统一使用同一版本PHP,卸载其他不使用的版本
3.2优化PHP配置之并发数。建议可以调小一些。根据服务器内存配置进行调整。
3.3优化PHP配置之max_execution_time最大脚本运行时间。可以调小一些,我的是60
建议可以边排查边观察服务器负载、CPU等状态。如果服务器负载在10%-20%左右,说明调试成功。切记在调试前做数据库备份!!!
4.服务器配置太低
这项其实是最有效也简单的方法了,当然也最花钱。目前搭建网站推荐起步还是CPU双核、内存2G的服务器。尤其是国内的服务器提供商。如腾讯云香港服务器、阿里云香港服务器等。
5.【kswapd0】进程占用CPU过高
- ssh窗口输入【top】命令:查看【kswapd0】进程的pid号
- 输入【ll /proc/pid号】:查看【kswapd0】进程执行了哪些命令
- 输入【netstat -anltp|grep kswapd0】或【netstat -antlp】:查看【kswapd0】进程是否有对外连接端口及ip地址
- 输入【ls -l /proc/进程PID/exe】:查看病毒所在文件位置
- 输入【rm rf 位置/】:删除病毒文件
- 输入【kill -9 pid号】:关闭进程【kswapd0】
小结
使用宝塔面板,还是要养成好的使用习惯。不常用的应用要及时卸载,不使用盗版的主题、插件,不安装不明来源的源码等。根据服务器配置来设置我们的PHP、MySQL、内存等,过高或过低,都不利于我们网站的稳定运行。同时,一定要定期备份网站文件、数据库,以防不测。
本文标题:《宝塔面板08-宝塔面板服务器CPU负载100%常见原因及解决方案》
本文链接:https://freechao.com/704.html
发布日期:2021年01月09日 18:55:56
更新日期:2024年03月06日 20:47:10
版权声明:除特殊注明,均为作者原创内容,遵守CC-BY-NC 4.0版权协议,转发请保留原文链接!
免责声明:文中如涉及第三方资源,均来自互联网,仅供学习研究,禁止商业使用,如有侵权,联系我们24小时内删除!