关于服务器高负载的问题,如果服务器的负载只是偶尔出现高的情况,您可以不用太在意,可能当时正在执行任务所以导致服务器负载一时增高。另外如果负载不超过百分之八十您也不用太禁止,服务器运行起来都是要消耗服务器性能的。
如果您的服务器出现负载长时间百分之百的情况。您可以根据以下步骤来排查下问题所在:
1、查看服务器运行状态
面板的监控页面有显示服务器各项资源的使用情况,您将鼠标放在线条上即可查看到占用该资源最高的五个进程。
如果您未可以开启监控也可以软件商店安装任务管理器或者在命令行执行top或htop命令来查询到当前服务器运行状态
2、检查相关程序日志
找到相关进程后可以在面板左侧的日志页面查看相关日志文件以寻找错误、警告或异常信息。
a )如果是nginx和php主要占用服务器资源,建议可以排查网站访问日志,来排查下网站是否被攻击了,
您不会分析网站日志的话,软件商店有【网站监控报表插件】,可视化查看日志,如果有大量请求在1秒或几秒内进来,大概率就是被攻击了导致的,你可以安装我们的【Nginx/Apache防火墙】插件拦截攻击,详细设置参考cc防御那一段: https://www.bt.cn/bbs/thread-73847-1-1.html
b )如果是MySQL或者PHP主要占用服务器资源,可以看下mysql,php是否有大量慢日志,有大量日志的话大概率是网站程序导致的,可以联系代码提供者或者程序员协助您处理一下;
c )如果系统进程您可以使用 strace 命令具体排查下。
d )如果是非常见进程导致的负载高,您可以和代码提供者或者程序员确认下是为网站产生的,或者和服务器运营商确认下是否是那边的进程,如果都不是的话,您则需要具体排查下。
3、查看网络使用
面板的监控页面或者是在命令行执行iftop 或 nethogs 命令来监控网络使用情况,来排查下服务器是否被ddos攻击,如果存在带宽高、服务器存在大量的TCP链接、丢包超时的情况,大概率就是ddos攻击,面板中的防护软件属于是软防无法防御ddos攻击,需要进行防御的话您可以咨询下服务器运营商是否有相应的防护功能。
请您耐心花点时间按照以上步骤进行排查,以上步骤应该能帮助你定位服务器高负载的问题所在。如果您按照上面步骤进行排查后确实仍无法确定问题所在,您可以补充更多细节。这边会视情况进行回复。
如果您需要我们的人工处理,您可以购买企业运维版,这边给您进行一步步排查。 |