apache php-fpm - 已达到 max_children -> 服务器无响应,直到 php-fpm 重新启动

apache php-fpm - 已达到 max_children -> 服务器无响应,直到 php-fpm 重新启动

我们的一台服务器具有非常特殊的设置,对未知事件非常敏感。

硬件:

  • Xen虚拟机
  • 22 核 (采用 Intel xeon 4*6 核构建)
  • 磁盘阵列 6 SSD
  • 60 GB 内存

配置:

  • Suse Openlinux 13.1
  • Apache2.4-事件
  • PHP 5.5.14
  • 修改代理服务器
  • php-fpm
  • 5.5.33-MariaDB

工作量:

  • 大约 120 个不同的网站
  • 120 个网站中约有 60 个是 Typo3 网站(其余的也是由 php 驱动的)

问题:

但有时,例如,当我们运行包括 mysqldump 的备份作业时,我们会遇到这样的问题:虚拟主机一个接一个地发出“已达到 max_children”的信号并停止响应。当然,我们在流量较少的时候进行备份,我们可以接受短时间的“无响应”,但这种死锁或封锁永远不会自行结束。手动重启 php-fpm 后一切都会好起来。

即使在高流量时段,该系统的正常行为也是完美无缺且速度快如闪电。大多数核心处于空闲状态,我知道的其他参数都正常。

当然,无论是在消息日志中(“max_children reached”除外),还是在任何 apache/vhosts 日志中,都没有提示日志文件条目。是的,内存使用量和打开的进程数迅速增加。

有没有人遇到过像我们这样的环境(我知道这个怪物里面有很多特殊的东西)并且遇到过相同或相似的问题,以及如何调试这些问题的好主意?

相关内容