我们在RHEL 6.6上的web服务器Varnish+Nginx+FastCGI(php-fpm)上运行以下堆栈
它是一个动态的网站,每次都有不同的结果集,有大约200万个与谷歌索引的URL。
我已经与开发人员进行了几次讨论,但据他所说,底层的php脚本几乎什么都不做,它应该不会花这么长时间(120秒),但它仍然提供504网关超时。
需要确定问题发生的确切位置:
需要找出我们得到504的确切原因(我知道它的超时,但原因不明)。需要找到根本原因才能永久修复它。
我如何确认问题到底在哪里?
以下是一些已经定义的超时:
以下是sysctl.conf中的一些设置:
如果它编写的代码很差,那么我需要通知开发人员504是由于php代码中的问题而发生的,而不是由于nginx或php-fpm,如果它是由于nginx或php-fpm,那么需要修复它。
2016/01/05 03:50:54[错误]1070#0:*201650845连接到上游时上游超时(110:连接超时),客户端:66.249.74.99,服务器:x.x.x.x,请求:“get/some/URL http/1.1”,上游:“fastcgi://127.0.0.1:9000”,主机:“example.com”
2016/01/05 00:51:43[错误]1067#0:*200656359从上游读取响应标头时上游超时(110:连接超时),客户端:115.112.161.9,服务器:192.168.12.101,请求:“get/some/URL http/1.1”,上游:“fastcgi://127.0.0.1:9000”,主机:“example.com”
>
php-fpm过程数也正常。后端看起来没有过载,因为其他请求在同一时间被很好地服务了。
只有一个php-fpm池正在使用。一个php-fpm主进程(父进程)和其他从进程(子进程)通常只有在观察到5xx时才处于正常范围。php-fpm进程的数量没有显著增长,即使增长了,服务器也有足够的容量来分叉新的进程并为请求服务。
尝试进一步增加nginx配置中的fastcgi_read_timeout
和proxy_read_timeout
。您可以将其添加到任何具有长任务的文件的顶部
ini_set('max_execution_time', '0'); // for infinite time of execution
ini_set('max_execution_time', '300'); //300 seconds = 5 minutes
ini_set('memory_limit','2048M'); // For unlimited memory limit set -1
我在一个Spring boot项目中工作,有一个请求返回网关超时504。我可以增加这个超时吗?这是一个属性,我可以改变在独立的完整。xml?我使用的是wildfly服务器。 请求在1分钟内触发两次,每次触发时间为1分钟。
你知道是怎么回事吗?
很多次,当我试图在UI中打开某些DAG的树状视图或任务持续时间页面时,我得到错误:504网关超时。有时在那之后,我甚至无法打开包含DAG列表的页面。你知道这个问题可能来自哪里吗? 运行Airflow的机器的CPU和内存似乎很好,我使用RDS作为元数据。 谢谢!
我使用PHP和Apache以及nginx作为反向代理,所有这些都在Docker上,我有几个长时间运行的调用在60秒后计时,导致504网关超时。我知道我的应用程序被成功调用,因为我正在跟踪我的PHP应用程序的日志,我可以看到它正在积极地向日志写入。每次都是60秒的超时,但我似乎不知道那个设置在哪里。 我尝试了这篇文章中的建议,但没有任何效果。我已经用一些与时间相关的设置更新了php.ini文件,并验
我正在尝试使用Nginx在Ubuntu16.4服务器上托管Django1.11应用程序。但是在运行服务器之后,我得到了 *1从上游读取响应标头时上游超时(110:连接超时),客户端:118.179.95.25,服务器:18.136.204.142,REQU$ 2019/07/24 18:13:13[错误]15221#15221:*1从上游读取响应标头时上游超时(110:连接超时),客户端:118.
/etc/httpd/conf.d/fcgid.conf 我有...见下文 我已经尽力做到最好了。为了测试这一点,我只是运行下面的函数。 在与支持人员聊天后,我被告知需要编辑nginx.conf,并被转到以下帖子http://blog.secaserver.com/2011/10/nginx-gateway-time-out/ 在服务器设置中找不到任何值。client_header_timeout