codeigniter Nginx + php-fpm随机挂起

cs7cruho  于 2022-12-07  发布在  Nginx
关注(0)|答案(2)|浏览(147)

我有一个用Codeigniter制作的网站,运行在Ubuntu上,有Nginx和PHP-FPM。它运行得很好,直到昨晚,当它开始加载页面真的很慢,有时给504,其他时候加载页面很快。
如果我重新启动nginx或php-fpm,网站正常工作20-30秒,然后问题再次出现。
以下是nginx错误日志的内容:
[错误代码] 25226#25226:*65上行超时(110:连接超时),客户端:X.X.X.X,服务器:www.mydomain.ext,请求:“GET / HTTP/1.1”,上游:“运行时出错”,主机名:“我的域名. ext”
我已经在谷歌上搜索了几个小时,玩了几个小时的nginx和php-fpm配置,但我还是解决不了。
有人知道怎么帮我吗?

r55awzrz

r55awzrz1#

在我看来,这看起来像是FPM进程管理的问题。更多信息请参见link。看起来你有静态的进程数可用于php-fpm,而流量超过了它。我也遇到过类似的问题,但我不记得这是否是当时的错误信息。但行为就像你解释的那样,一些连接速度非常慢(等待fpm?)其他连接返回504。
更新:为了证实我的理论,你应该检查文件/etc/php5.6/pool.d/www.conf和下面这行:

pm.max_children = X

增加数值并重新启动fpm。然后查看问题是否解决。

m2xkgtsf

m2xkgtsf2#

尝试按如下方式修改配置:

pm = ondemand
pm.max_children = 200
pm.process_idle_timeout = 1s
pm.max_requests = 1000

重新启动fpm,您的问题应该得到解决。

相关问题