阿里云主机宕机解决

时间:2019 年 3 月 14 日 | 作者: | 分类:Linux | 浏览:27 ℃ | 发表评论

宕机,使用阿里云自带的查看httpd/mysqld/php-fpm/unknown进程使用情况。

其中
1、httpd/php-fpm  进程数达到设定最大值;
2、磁盘读写(特别是写数据飙升 读请求飙升);
3、出网数据飙升;
4、TCP 连接数中 Establish 数据小升,NON-Establish 飙升

首先限制上面两个进程名进程数的最大值,以防止CPU满负荷

原因分析:

1、链接太多,解决方案:限制MaxRequestWorkers
2、进程内存溢出,解决方案:限制:MaxRequestsPerChild

参考文章:apache httpd占用内存高解决办法

使用free -h命令查看内存
ps -aux | grep httpd 可以看到httpd这个程序的进程id
使用ps -aux | sort -k4nr | head -10命令查看内存占用前10的进程

ps -aux | sort -k4nr | grep php-fpm 对php-fpm 进程进行排序
ps -aux | sort -k4nr | grep httpd  对php-fpm 进程进行排序
上述方法都设置完毕,看未来一段时间有没有出现CPU满负荷

查看  httpd/php-fpm  两个进程的信息,使用 ps命令(PS命令详解: https://www.cnblogs.com/sexybear/p/Linux_ps.html

ps aux  #查看当前所有的进程
ps aux | grep -c httpd  #显示有多少进程数

ps aux | grep httpd #显示具体的进程数信息

Top 查看某些或者某个进程(top -p pid)(https://www.cnblogs.com/zhoug2020/p/6336453.html

1、vmstat 1  查看系统负载
2、使用pidstat查看进程使用磁盘的情况(详细查看)   pidstat -d 1
通过进程号找到对应的脚本名称,并杀掉对应的进程 kill 进程的pid

上两句出处:https://www.cnblogs.com/xibuhaohao/p/9946644.html 
pidstat详解https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858874.html
pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。

Linux下查看某一进程所占用内存的方法

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注