php5-fpm 占用内存和进程一直不释放

redword 2015-07-31 10:29:32
php5-fpm 有好多闲置的进程一直不释放 ,如下:

怎么才能让他自动释放呢?

pm = dynamic
pm.max_children=200
pm.start_servers=2
pm.min_spare_servers=1
pm.max_spare_servers =100
服务器内存8G,cpu4核
每天的pv2000-3000
前后台在一台服务器上。


PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2649 mysql 20 0 451m 117m 8844 S 0.3 1.5 10:13.15 mysqld
409 apple 20 0 196m 41m 7204 S 4.3 0.5 10:37.20 php5-fpm
16026 apple 20 0 195m 41m 7396 S 0.0 0.5 15:01.28 php5-fpm
6576 apple 20 0 195m 40m 7424 S 0.0 0.5 29:51.03 php5-fpm
31110 apple 20 0 195m 38m 6904 S 0.0 0.5 18:57.11 php5-fpm
21894 apple 20 0 193m 38m 7060 S 0.0 0.5 23:18.54 php5-fpm
15814 apple 20 0 195m 36m 7448 S 0.0 0.5 12:29.93 php5-fpm
19453 apple 20 0 191m 36m 6996 S 0.0 0.5 24:41.89 php5-fpm
9800 apple 20 0 193m 36m 7256 S 0.0 0.5 35:08.68 php5-fpm
16850 apple 20 0 194m 35m 7120 S 0.0 0.5 26:21.68 php5-fpm
1753 apple 20 0 194m 35m 7140 S 0.0 0.5 21:11.83 php5-fpm
15259 apple 20 0 190m 35m 7164 S 0.0 0.5 13:36.80 php5-fpm
16780 apple 20 0 194m 35m 7016 S 0.0 0.5 43:15.46 php5-fpm
20368 apple 20 0 189m 34m 7288 S 0.0 0.4 120:03.20 php5-fpm
12943 apple 20 0 189m 34m 7196 S 0.0 0.4 29:03.01 php5-fpm
15978 apple 20 0 188m 33m 7228 S 0.0 0.4 40:12.52 php5-fpm
13035 apple 20 0 190m 33m 7004 S 0.0 0.4 32:16.54 php5-fpm
1812 apple 20 0 187m 32m 7064 S 4.3 0.4 6:33.03 php5-fpm
16892 apple 20 0 191m 32m 7332 S 0.0 0.4 54:53.68 php5-fpm
15859 apple 20 0 191m 31m 7272 S 0.0 0.4 55:33.95 php5-fpm
15331 apple 20 0 190m 31m 7104 S 0.0 0.4 8:28.68 php5-fpm
15278 apple 20 0 191m 31m 7272 S 0.0 0.4 30:12.18 php5-fpm
19212 apple 20 0 190m 31m 7076 S 0.0 0.4 37:09.57 php5-fpm
5087 apple 20 0 188m 31m 7036 S 0.0 0.4 4:54.33 php5-fpm
7031 apple 20 0 188m 31m 7232 S 0.0 0.4 33:23.37 php5-fpm
4182 apple 20 0 188m 31m 7236 S 0.0 0.4 44:56.31 php5-fpm
15411 apple 20 0 191m 31m 7144 S 0.0 0.4 19:22.66 php5-fpm
16607 apple 20 0 186m 31m 7224 S 0.0 0.4 26:51.86 php5-fpm
18880 apple 20 0 190m 31m 7204 S 0.0 0.4 25:54.58 php5-fpm
8434 apple 20 0 186m 31m 7100 S 0.0 0.4 27:38.15 php5-fpm
16102 apple 20 0 186m 31m 7164 S 0.0 0.4 3:55.69 php5-fpm
5068 apple 20 0 186m 31m 7100 S 0.0 0.4 9:42.19 php5-fpm
15260 apple 20 0 188m 31m 7152 S 0.0 0.4 4:33.00 php5-fpm
22172 apple 20 0 186m 31m 7004 S 0.0 0.4 20:40.99 php5-fpm
9755 apple 20 0 186m 31m 7056 S 0.0 0.4 15:37.47 php5-fpm
22328 apple 20 0 186m 31m 6932 S 0.0 0.4 24:22.32 php5-fpm
29930 apple 20 0 188m 30m 6852 S 0.0 0.4 8:20.09 php5-fpm
4154 apple 20 0 187m 30m 6888 S 0.0 0.4 5:33.70 php5-fpm
...全文
2410 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
果酱很好吃 2015-08-18
  • 打赏
  • 举报
回复
设置得太小也容易出现无进程可用(502状态),一般来说max_requests 300-500 合适(至少我是这样用的),但也要结合start_servers和你的访问量来看,也可以适当调大和减少,这是因人而异的。
redword 2015-08-10
  • 打赏
  • 举报
回复
引用 2 楼 jam00 的回复:
设置 pm.max_requests = 500 参数,表示每个进程接受500个请求后关闭,并再开一个新的进程,500可设置
那是不是把pm.max_requests设小一些,进程关闭后就自动释放内存了?
redword 2015-08-10
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
FastCGI 进程,一旦加载就不会释放 当其工作完成后,就休眠于 FastCGI 系统池中,等待下一次被唤醒
不释放的话,内存一直增长,不够用了,而且超过50% nginx就开始报502错误,怎么办呢?
果酱很好吃 2015-07-31
  • 打赏
  • 举报
回复
设置 pm.max_requests = 500 参数,表示每个进程接受500个请求后关闭,并再开一个新的进程,500可设置
xuzuning 2015-07-31
  • 打赏
  • 举报
回复
FastCGI 进程,一旦加载就不会释放 当其工作完成后,就休眠于 FastCGI 系统池中,等待下一次被唤醒

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧