68 个并发用户访问网站后出现 502 网关错误

68 个并发用户访问网站后出现 502 网关错误

我在 jMeter 中进行压力测试时遇到了问题。实际上,我们达到了 68 个并发用户的硬性限制。一旦测试增加到该用户数,我们就会收到 502 个错误网关错误。

有趣的是,我们在一台 CPU 和 RAM 翻倍的虚拟机上遇到了 68 个用户的故障,这种行为非常相似。所以这让我相信这是一个配置问题。毕竟,每台服务器上的 docker 容器的配置都是相同的。

我尝试过提高 nginx.conf 中的 worker_connections 设置,但没有任何效果。我甚至重启了机器以确保新设置已应用。

还有其他值得研究或尝试的想法吗?

我不确定这是否有帮助,但这是我们在出现故障的 nginx 服务器上的配置......

upstream unicorn_server {
  server unix:/app/tmp/unicorn.sock fail_timeout=0;
  keepalive 512;
}

server {
  listen 4043 ssl;

  ssl_certificate /etc/nginx/certs/hive.crt;
  ssl_certificate_key /etc/nginx/certs/hive.key;

  gzip            on;
  gzip_min_length 1000;
  gzip_proxied    expired no-cache no-store private auth;
  gzip_types      application/json;

  root /app/public;
  try_files $uri @unicorn_server;

  keepalive_timeout 10;

  location @unicorn_server {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Proto https; # if use ssl
    proxy_redirect off;
    proxy_pass http://unicorn_server;
    proxy_http_version 1.1;
  }

  location ~ ^/(assets|images|javascripts|stylesheets|swfs|system)/ {
    gzip_static on;
    expires max;
    add_header Cache-Control public;
    add_header Last-Modified "";
    add_header ETag "";

    open_file_cache max=1000 inactive=500s;
    open_file_cache_valid 600s;
    open_file_cache_errors on;
    break;
  }
}

相关内容