【问题标题】:Nginx + fcgiwrap throws 502 Bad Gateway at high request rateNginx + fcgiwrap 以高请求率抛出 502 Bad Gateway
【发布时间】:2019-05-25 19:02:03
【问题描述】:

我正在尝试扩展我在 nginx 下运行的 overpass fastcgi 脚本,通过 fcgiwrap 连接。

配置工作正常,直到 m4.2xlarge AWS 实例上大约 140 个请求/秒。

CPU 使用率仅为 15%,许多请求以 502 错误代码开始失败。

显然没有权限问题。

Nginx 日志显示:

connect() 到 unix:/var/run/fcgiwrap.socket 连接到上游时失败(11:资源暂时不可用),客户端:10.0.16.100,服务器:,请求:“POST /api/interpreter HTTP/1.1 ", 上游: "fastcgi://unix:/var/run/fcgiwrap.socket:", 主机: xxxxx

epoll_wait() 报告客户端过早关闭连接,因此在向上游发送请求时上游连接也关闭,客户端:10.0.31.48,服务器:,请求:“POST /api/interpreter HTTP/1.1”,上游:“ fastcgi://unix:/var/run/fcgiwrap.socket:",

我的印象是 fcgiwrap.socket 或 socket 后面的 overpass 程序无法足够快地传递请求,但不确定如何优化。

Nginx 配置:

server {
   listen 80;

location / {
     add_header Allow "GET, POST, PUT, DELETE" always;
} 

location /cgi-bin/ {
                    include        fastcgi_params;
                    fastcgi_param  SCRIPT_FILENAME  /app/$fastcgi_script_name;
                    fastcgi_param  PATH_INFO        $fastcgi_path_info;
                    fastcgi_pass   unix:/var/run/fcgiwrap.socket;
                    fastcgi_buffers 8 16k;
                    fastcgi_buffer_size 32k;
                    fastcgi_connect_timeout 300;
                    fastcgi_send_timeout 300;
                    fastcgi_read_timeout 300;
            }

}

【问题讨论】:

    标签: nginx load-testing fastcgi


    【解决方案1】:

    看起来像是立交桥特有的问题, 据此,当前的 overpass Dispatcher v0.7.55 可以处理的并发请求数量非常有限:

    https://github.com/drolbr/Overpass-API/issues/340

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-12
      • 2020-08-01
      • 1970-01-01
      • 2017-12-30
      • 2014-03-05
      • 2014-10-17
      • 2017-05-03
      • 1970-01-01
      相关资源
      最近更新 更多