今天上班遇到一个非常奇怪的事情,公司监控服务器之前都是在正常运行,使用nginx+php-fpm,并且监控服务器上部署这其他部门在使用的几个站点,从早上上班开始发现监控显示页面打不开,各种查找原因,最后发现只有在重启php-fpm后,监控页面才能正常访问,访问正常后,由于最近事情比较多,所以没太多关注。下午的时候我又打开看了下,发现又和上午一样,浏览器报504错误,并且重启php-fpm之后又能正常访问了;发现这个问题有点过分了,我想肯定起来不久又会重新报504错误的;过了两分钟,果然,继续访问不了,504错误。这次重新登上服务器,查看了下php-fpm的error日志:

按照它给的建议,找php-fpm配置文件。修改了

pm.max_children = 50

pm.start_servers = 15

pm.min_spare_servers = 10

pm.max_spare_servers = 30

的值,这个值是修改之前的,修改之后分别为:

pm.max_children = 100

pm.start_servers = 60

pm.min_spare_servers = 50

pm.max_spare_servers = 75

这个值的跨度还是比较大的,这是在我几次尝试之后不报错的情况下修改的;但是修改完之后,监控页面时可以访问了,出现的问题却让我们很郁闷,数据库的所有监控全部报警,后来赶紧查看了下访问日志,发现来自全国各地的公网IP在不停的访问,这个问题让我第一印象就是被攻击了,立马查看了下系统的访问日志,发现的确有很多的访问进来,但是作为一台独立的线上服务器,即使有不断的访问进来也不至于导致所有的数据库连接报警的,尝试着减少访问,看看能不能消除数据库报警,但是加了各种措施之后,数据库报警依然存在,我又将php-fpm的配置参数还原,尝试着重启登入数据库,但是发现登入数据库时提示缺少sock文件,登不进去;找到配置文件,按照配置文件中的sock路径看了下,是没有这个sock文件;到网上搜了许多,并没有好的解决方法,便向MySQL的相关QQ群里面询问,后来,有人说重启之后会自动生成sock文件,我便试着重启了下,结果又发现了问题:

这个问题我就郁闷了,根本停不掉啊;最后各种方法之后,决定kill掉。但是,问题又来了,kill关闭之后,呵呵。。。起不来,报

 Starting MySQL... ERROR! The server quit without updating PID file (/home/data/mysqldata/localhost.localdomain.pid).
这个错误,看了下这个目录下的pid文件,不存在。。进入/home/data/mysqldata目录,查看了后200行的localhost.localdomain.err文件

最后的原因我想大家谁也想不到,群里的人告诉我Errcode 28一般都是磁盘空间不够导致,我赶紧看了下,使用率百分之百,顿时,心中。。。。。清理完备份文件,过几分钟,数据库可以正常启用,监控也正常了。

这个问题真的不算是什么问题,可是正因为运维人员的疏忽,导致这种事情发生,还好服务器暂时没有接入用户,要不然问题可就大了,做了定期备份,竟然没做定期清理,这种错误真的不应该犯,当然,我也进行检讨,查了所有的问题,就是没有查看磁盘空间,导致走了那么大的弯路,希望各位运维人员也能以此为戒!!

关于php-fpm子进程达到上限并且浏览器访问显示504错误的更多相关文章

  1. nginx和fpm的进程数配置和502,504错误

    502 和 php-fpm.conf 1.php-cgi进程数不够用.php执行时间长,导致没有空闲进程处理新请求. 2.php-cgi进程死掉.php-fpm超时时间短,当前进程执行超时关闭连接. ...

  2. Selenium 3 + BrowserMobProxy 2.1.4 模拟浏览器访问 (含趟坑)

    背景 Selenium 是一个Web自动化测试的组件,可基于WebDriver去控制弹出浏览器去做一系列Web点击或行为测试(当然也可以去做一些邪恶的事..),减少重复人工网页测试的开销.Browse ...

  3. python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?

    python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...

  4. 浏览器访问Servlet

    浏览器访问Servlet1.指定一个Servlet路径(                     在web.xml :              <servlet>             ...

  5. sublime text3 前端编译神器,浏览器实时显示

    前端编译器有很多,Dreamweaver,sublime text ,webstorm,但在使用之后感觉sublime text3就是前端的编译神器 首先sublime text3最好使用英文原版,虽 ...

  6. 用chrome模拟微信浏览器访问需要OAuth2.0网页授权的页面

    现在很流行微信网页小游戏,用html5制作的小游戏移过来,可以放到微信浏览器中打开,关键是可以做成微信分享朋友圈的形式,大大提高游戏的传播,增强好友的游戏互动. 微信浏览器中打开网页游戏效果还不错,对 ...

  7. 解决使用IIS5.0配置的FTP服务器,客户端浏览器访问时无法获取目录列表的问题。

    我在windows xp sp3下利用iis构架了FTP服务器,允许且只允许匿名用户登陆.但刚开始配置好后,不管是使用命令行模式还是使用浏览器都发现无法访问. 于是怀疑防火墙屏蔽端口所致,果不其然,在 ...

  8. Windows Server 2003服务器.net4.0+IIS6.0的服务器,IE11浏览器访问的不兼容性

    工作中发生了一件诡异的事情: 程序在Win7+.NET4.0+IIS7.5的服务器部署,IE8和IE11请求时,响应的样式都正常. 但是在美的同事反映说,Windows Server 2003服务器. ...

  9. 解决Ext.form.DateField在浏览器中显示可能有问题

    解决Ext.form.DateField在浏览器中显示可能有问题,界面将会拉的很长很长.如下图:  办法: 1:设置css的长度 .x-date-menu { padding-top:2px;padd ...

随机推荐

  1. 百度地图API 批量添加 带检索功能的信息窗口

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. EventBus

    EventBus GitHub 上的地址 https://github.com/greenrobot/EventBus EventBus干的事情可以概括来说 别人可以根据某一个事件订阅我,但是他得去实 ...

  3. Windows7安装 .net framework 4.0

    1.首先下载安装包.net framework 4.0点击下载即可 2.安装,双击下载好的安装包

  4. jdk安装问题--javac不是外部命令

    set java_home=C:\Program Files\Java\jdk1.6.0_26   安装JDK的根目录 set classpath=%JAVA_HOME%\lib\tools.jar; ...

  5. JavaScript中的 offset, client,scroll

    在js 中我们要用到的 offset, client, scroll 在这我把自己理解的给大家分享一下. offset div.offsetTop 指div距离上方或上层控件的距离,单位像素 div. ...

  6. excel使用技巧

    1,如何得到开口向下的大括号 1,插入左右方向的大括号. 2,点击绘制的大括号,旋转出现绿点,旋转90度,即可. 问题2:Excel如何截图 1,选中截图内容,选择复制->复制为图片->( ...

  7. SQL分组多列统计(GROUP BY后按条件分列统计)

    as tjsl from fyxx group by zt,whbmbh end) as ybhsl from fyxx group by whbmbh 下面是摘自别人的博客 最近遇到一个问题,需要对 ...

  8. ROW_NUMBER()与PARTITION BY 实例

    环境:SQL Server 2008 R2 数据表结构 SELECT A.* FROM [tbiz_AssScoreWeidu] A SELECT A.* ,ROW_NUMBER() OVER ( P ...

  9. BeanUtils.populate(obj, map);

    public static void populate(Object bean, Map<String, ? extends Object> properties) throws Ille ...

  10. R语言进阶

    一.初学入门:<R in Action><The Art of_R Programming>入门者可首选两本,前者从统计角度入手,分高中低三部分由浅入深的讲解了如何用R来实现统 ...