一次故障过程

1.报警图片服务器负载高,静态图片全部缓存,压缩程序也停止了,为什么会负载高呢,刚开始以为是图片集中回源,看日志量并没有显著增长,用top查看cpu占用率,java进程占用很高,这个是在跑的logstash日志收集系统,关闭logstash负载马上开始下降,恢复到正常水平,怀疑logstash有bug,或者内存泄漏。

2.重启logstash,马上负载又开始增加,瞬间飙高到30多。free -m 查看内存

$ free  -h
              total        used        free      shared  buff/cache   available
Mem:            15G         14G        474M         18M        476M        575M
Swap:            0B          0B          0B

内存使用率居然这么高,明显不正常,logstash已经关闭了,看来是内存过少导致起logstash后内存不足,发生雪崩,负载瞬间飙高

到底什么占用了内存呢?

ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'

看到

19460 php-fpm         php-fpm: pool www            0.0 149360 1011768 Jan16 www     1000
19461 php-fpm         php-fpm: pool www            0.0 151312 1090228 Jan16 www     1000
19466 php-fpm         php-fpm: pool www            0.0 182440 1039204 Jan16 www     1000
19467 php-fpm         php-fpm: pool www            0.0 171056 1086568 Jan16 www     1000
19470 php-fpm         php-fpm: pool www            0.0 100732 980720 Jan16 www      1000
19471 php-fpm         php-fpm: pool www            0.0 146248 1081808 Jan16 www     1000
19472 php-fpm         php-fpm: pool www            0.0 156560 950324 Jan16 www      1000
19473 php-fpm         php-fpm: pool www            0.0 133112 1098576 Jan16 www     1000
19474 php-fpm         php-fpm: pool www            0.0 167420 1055832 Jan16 www     1000
19476 php-fpm         php-fpm: pool www            0.0 144148 1090256 Jan16 www     1000
19477 php-fpm         php-fpm: pool www            0.0 160232 1086956 Jan16 www     1000
19478 php-fpm         php-fpm: pool www            0.0 178360 1093672 Jan16 www     1000
19479 php-fpm         php-fpm: pool www            0.0 119572 1000984 Jan16 www     1000
19480 php-fpm         php-fpm: pool www2           0.0 99488 1075708 Jan16 www      1000
19482 php-fpm         php-fpm: pool www2           0.0 146984 1029188 Jan16 www     1000
19483 php-fpm         php-fpm: pool www2           0.0 152272 1097468 Jan16 www     1000
19484 php-fpm         php-fpm: pool www2           0.0 173892 1016076 Jan16 www     1000
19486 php-fpm         php-fpm: pool www2           0.0 161156 1083168 Jan16 www     1000
19487 php-fpm         php-fpm: pool www2           0.0 139152 1023412 Jan16 www     1000
19488 php-fpm         php-fpm: pool www2           0.0 162748 1158700 Jan16 www     1000
19489 php-fpm         php-fpm: pool www2           0.0 181272 1151796 Jan16 www     1000
19490 php-fpm         php-fpm: pool www2           0.0 168712 1087008 Jan16 www     1000
19491 php-fpm         php-fpm: pool www2           0.0 167252 1070128 Jan16 www     1000
19492 php-fpm         php-fpm: pool www2           0.0 142692 1023468 Jan16 www     1000
19493 php-fpm         php-fpm: pool www2           0.0 160668 1050168 Jan16 www     1000
19494 php-fpm         php-fpm: pool www2           0.0 168236 1029248 Jan16 www     1000
19495 php-fpm         php-fpm: pool www2           0.0 105944 1058620 Jan16 www     1000
19496 php-fpm         php-fpm: pool www2           0.0 149064 1014912 Jan16 www     1000
19497 php-fpm         php-fpm: pool www2           0.0 133652 938272 Jan16 www      1000
19498 php-fpm         php-fpm: pool www2           0.0 173588 1086708 Jan16 www     1000
19499 php-fpm         php-fpm: pool www2           0.0 196616 1029168 Jan16 www     1000
19500 php-fpm         php-fpm: pool www2           0.0 194128 965328 Jan16 www      1000
19501 php-fpm         php-fpm: pool www2           0.0 166892 958532 Jan16 www      1000

很多昨天的php-fpm进程居然还在,没释放,昨天改了gd库,用imagick库,查看监控图,确实是修改后内存使用量开始逐渐升高,由此定位问题

posted @ 2018-01-17 10:21  行知散人  阅读(180)  评论(0编辑  收藏  举报