php-fpm服务挂掉
今天发了个链接,可能同时在线的人瞬间比较多,结果网站报503错误,回去打开php-fpm错误日志一看,php-fpm服务挂掉了,报如下错误:
[04-Apr-2016 15:38:04] NOTICE: systemdmonitorintervalsetto 10000ms
[05-Apr-2016 19:03:08] WARNING: [poolwww] seemsbusy (youmayneedto increasepm.start_servers, or pm.min/max_spare_servers), spawning 8 children, thereare 0 idle, and 29 totalchildren
[05-Apr-2016 19:03:09] WARNING: [poolwww] seemsbusy (youmayneedto increasepm.start_servers, or pm.min/max_spare_servers), spawning 16 children, thereare 0 idle, and 34 totalchildren
[05-Apr-2016 19:03:11] WARNING: [poolwww] seemsbusy (youmayneedto increasepm.start_servers, or pm.min/max_spare_servers), spawning 32 children, thereare 0 idle, and 39 totalchildren
[05-Apr-2016 19:03:12] WARNING: [poolwww] seemsbusy (youmayneedto increasepm.start_servers, or pm.min/max_spare_servers), spawning 32 children, thereare 0 idle, and 44 totalchildren
[05-Apr-2016 19:03:13] WARNING: [poolwww] seemsbusy (youmayneedto increasepm.start_servers, or pm.min/max_spare_servers), spawning 32 children, thereare 0 idle, and 49 totalchildren
[05-Apr-2016 19:03:14] WARNING: [poolwww] serverreachedpm.max_children setting (50), considerraisingit
错误提示建议增加pm.start_servers数量,打开我的php-fpm配置:
pm.max_children = 50
; Thenumberofchild processescreatedonstartup.
; Note: Usedonlywhenpmis setto 'dynamic'
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.start_servers = 15
; Thedesiredminimumnumberofidleserverprocesses.
; Note: Usedonlywhenpmis setto 'dynamic'
; Note: Mandatorywhenpmis setto 'dynamic'
pm.min_spare_servers = 5
; Thedesiredmaximumnumberofidleserverprocesses.
; Note: Usedonlywhenpmis setto 'dynamic'
; Note: Mandatorywhenpmis setto 'dynamic'
pm.max_spare_servers = 35
这里pm.start_servers之前我设置为5,注意配置文件也说明start_servers的值默认是max_spare_servers-min_spare_servers的一半。(ps:具体的值要根据服务器配置情况和压力测试得出)
网站服务器是阿里云1G带宽,1G内存,1核CPU配置,关键还在一台机子上装了数据库,redis各种服务。
几个php-fpm重要参数说明
pm.max_children = 24
static模式下创建的子进程数或dynamic模式下同一时刻允许最大的php-fpm子进程数量
pm.start_servers = 16
动态方式下的起始php-fpm进程数量
pm.min_spare_servers = 12
动态方式下服务器空闲时最小php-fpm进程数量
pm.max_spare_servers = 24
动态方式下服务器空闲时最大php-fpm进程数量
经验人士的总结:
一般php-fpm进程占用20~30m左右的内存就按30m算。如果单独跑php-fpm,动态方式起始值可设置物理内存Mem/30M,由于大家一般Nginx、MySQL都在一台机器上,于是预留一半给它们,即php-fpm进程数为$Mem/2/30。
调整之后的几个值是:
pm = dynamic
pm.max_children = 50
pm.start_servers = 15
pm.min_spare_servers = 10
pm.max_spare_servers = 40
重启php-fpm服务:service php70-php-fpm reload,继续使用top命令查看内存使用情况,发现十几个php-fpm启动。

php-fpm服务挂掉的更多相关文章
- 用Docker启动php-5.6 fpm服务配合宿主机nginx运行php测试环境
因为Ubuntu18.04默认的openssl版本就是1.1.0, 而PHP5.6无法在openssl 1.1下编译 "PHP 5.6 is receiving only security ...
- PHP-7的FPM服务的启动
1.PHP 7的FPM服务位置:/ect/init.d/php7.0-fpm 2.启动:sudo service php7.0-fpm reload
- mongodump 失败且导致mongo服务挂掉【本质原因,wt文件损坏】
====================================================== 标题遇到的问题是我要解决的问题的中间环节. 原本问题是:需要在之前standlone的Mo ...
- [网站日志]当Memcached缓存服务挂掉时性能监视器中的表现
我们用的Memcached缓存服务是阿里云OCS,今天晚上遇到了一次OCS挂掉的情况(计划中的升级),看一下性能监视器中的表现,也许对分析黑色1秒问题有帮助. 应用日志中错误: 2014-06-05 ...
- JIRA应用的内存参数设置不当+容器没有对资源进行限制导致服务挂掉的例子
背景: 应用的部署结构是这样的:使用rancher管理的Docker集群,有三台物理主机,二十多个Docker容器, 提供的功能是问题跟踪(JIRA),文档管理(Confluence),代码托管(sv ...
- zookeeper 服务挂掉重启后,dubbo 服务是不会自动重新注册上的
今天遇到一个问题: 系统初始有两个dubbo 服务 , A 和 B , 都是正常注册到zookeeper 上的, 但是zookeeper 服务机房 断电导致 服务宕机, 那就重启吧. 一切正常. 但是 ...
- Redis服务挂掉后,重启时闪退
这个时候去进程管理器里找一个 redisservice.exe 的进程..杀死他 杀死他 杀死他!!! 整理领结,嘬口咖啡, 嗯... 然后再来启动服务..
- CentOS7linux系统安装fpm服务,自己制作rpm包文件
1.安装ruby环境 [root@oldboy /]# yum install -y ruby ruby-devel rubygems gem install fpm gem sources --ad ...
- ESXi 6.7 的https服务挂掉处理方法 503 Service Unavailable
首先进入EXSi开启SSH(ESXi的主机控制台,非web控制台,是安装esxi的控制台) 然后 /etc/init.d/hostd status 显示已停止, 使用 /etc/init.d/host ...
随机推荐
- js实现倒计时效果
<!DOCTYPE html><head><meta http-equiv="Content-Type" content="text/htm ...
- JavaIO流文件的操作总结
IO流的分类 1.根据数据的流向: 输入流:用来读数据,如从外界设备读数据到内存中: 输出流:用来写数据,如从内存输出数据到外界存储设备: 2.根据数据流的格式: 字节流:一般用于声音或者秃瓢等二进制 ...
- Linux_日志管理介绍(一)
一.介绍 1.CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务,但是rsyslogd是和syslogd服务相兼容的 2.除了系统默认的日志之外,采用RPM方式安装的系 ...
- Android Studio-目录结构
新建工程项目后AS的Product目录结构如下所示: .idea://AS生成的工程配置文件,类似Eclipse的project.properties. app://AS创建工程中的一个Module. ...
- webuploader跨域上传
浏览器在跨域请求前会发个options请求来验证是否跨域,所以后端再处理这个options请求时,要告诉浏览器一些信息. 也就是个header信息 header("Access-Contro ...
- Mysql 中 iddata1的缩小步骤
原因就不多说了,,,, 直接上干货. 1. 备份数据库 mysqldump -q -uroot -ppassword --add-drop-table --all-databases >all1 ...
- HDFS文件和HIVE表的一些操作
1. hadoop fs -ls 可以查看HDFS文件 后面不加目录参数的话,默认当前用户的目录./user/当前用户 $ hadoop fs -ls 16/05/19 10:40:10 WARN ...
- php发送http put/patch/delete请求
今天学RESTful API的编写,发现不知道怎么发送HTTP PUT/PATCH/DELETE请求,还是要学习一个. 使用curl_opt函数来发送各式各样的http请求动作,不仅限于get和pos ...
- eclipse中xml文件不能自动提示的解决办法
1.出现不能提示的情况
- BZOJ2440 [中山市选2011]完全平方数
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...