我们有一个带有 php FPM 的生产 nginx Web 服务器。我们运行了一个 php 脚本,该脚本更新 mysql 数据库中的特定字段并使用 phpmail
函数发送一些内容。此 php 脚本是从命令行执行的。大约有 900 条记录,即更新数据库并mail
调用 php 函数 900 次。完成此脚本大约需要 15 分钟。
问题:问题是nginx
Web 服务器在这 15 分钟内没有响应。我以为在命令行中执行 php 脚本不会影响 http 服务器,但由于某种原因,服务器挂了。通常,我们的服务器会抛出 502 错误网关。但这次,网站显示加载符号并且没有响应。当我们停止脚本时,网站又恢复了。
- nginx http 服务器与导致服务器宕机的命令行上运行的脚本之间有什么关系?
- 是否存在其他系统配置(例如 RAM 等)是造成此停机问题的原因?
任何针对此问题的指示都将不胜感激。
更新:该脚本使用了 mysql 持久连接,导致 mysql 服务器的连接泛滥达到最大限制。感谢大家为我指明了正确的方向。