当前情况
阿里云ECS 4核、8G
-
运行服务
Laravel5.3.*
Supervisor 共计10个进程
Node
Nginx
PHP 7.0.17
top 按照内存排序情况
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3476 root 20 0 2447420 71484 6932 S 0.7 0.9 305:46.31 /usr/local/cloudmonitor/jre/bin/java -Djava.compiler=none -XX:-UseGCOverheadLimit -XX:Ne+
3500 root 20 0 422332 34260 10892 S 0.0 0.4 2:43.70 /usr/bin/php /mnt/www/public.weipeiapp.com/artisan queue:work --queue=default --sleep=3 +
13010 chenghu+ 20 0 1180928 29588 11504 S 0.3 0.4 17:39.77 node /home/chenghuiyong/.nvm/versions/node/v7.9.0/lib/node_modules/gitlabhook/gitlabhook+
29643 php-fpm 20 0 424972 29184 8144 S 0.0 0.4 9:10.31 php-fpm: pool www
29678 php-fpm 20 0 424876 29096 8132 S 0.0 0.4 9:11.66 php-fpm: pool www
29644 php-fpm 20 0 424976 28896 7852 S 0.0 0.4 9:10.82 php-fpm: pool www
29646 php-fpm 20 0 423032 28556 7520 S 0.0 0.4 9:10.09 php-fpm: pool www
30301 php-fpm 20 0 422852 28544 7572 S 0.0 0.4 9:10.07 php-fpm: pool www
29647 php-fpm 20 0 422920 28496 7528 S 0.0 0.4 9:10.51 php-fpm: pool www
29923 php-fpm 20 0 423004 28496 7508 S 0.0 0.4 7:45.81 php-fpm: pool www
5958 php-fpm 20 0 422876 28412 7528 S 0.0 0.4 8:57.88 php-fpm: pool www
9789 php-fpm 20 0 422872 28408 7516 S 0.0 0.4 8:42.10 php-fpm: pool www
29645 php-fpm 20 0 422772 28348 7512 S 0.0 0.4 9:12.34 php-fpm: pool www
13545 php-fpm 20 0 422628 28060 7464 S 0.0 0.4 3:59.57 php-fpm: pool www
3545 root 20 0 335424 27788 8404 S 0.0 0.3 3:00.95 /usr/bin/php /mnt/www/wuliu-3.weipeiapp.com/artisan queue:work redis --q
阿里云监控报告服务器已经占满86%内存
请教大家,该如何一步一步跟踪并优化相关代码减少内存开销啊?
Linux系统内存监控全面讲解:free命令
我们通过free命令查看机器空闲内存时,会发现free的值很小。这主要是因为,在Linux系统中有这么一种思想,内存不用白不用,因此它尽可能的cache和buffer一些数据,以方便下次使用。但实际上这些内存也是可以立刻拿来使用的。
所以 空闲内存=free+buffers+cached=total-used