502 erros de gateway inválidos após 68 usuários simultâneos no site

1

Estou com problemas ao fazer alguns testes de estresse no jMeter. Essencialmente, estamos atingindo um limite rígido de 68 usuários simultâneos. Assim que o teste atingir esse número de usuários, estaremos obtendo 502 erros de gateway inválidos.

O interessante é que estamos obtendo o mesmo comportamento de falhas em 68 usuários em uma VM com o dobro de CPU e RAM. Isso me leva a acreditar que isso é um problema de configuração. Afinal, as configurações são idênticas entre nossos contêineres docker em cada servidor.

Eu tentei aumentar a configuração worker_connections no nginx.conf, mas isso não tem efeito. Eu até reiniciei a máquina para ter certeza de que a nova configuração estava sendo aplicada.

Existe alguma outra ideia sobre o que investigar ou experimentar?

Não tenho certeza se isso ajuda, mas aqui está nossa configuração no servidor nginx que está falhando ...

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;
  }
}
    
por Steve Wortham 26.04.2016 / 17:13

1 resposta

0

Isso pode não ser um problema no site. Isso pode acontecer devido a problemas entre seu gerador de carga e o destino. Você pode nos contar mais sobre sua infraestrutura de teste? Onde estão os geradores de carga localizados em relação ao aplicativo / servidor em teste? Você precisa atravessar proxies para a sua comunicação? Como os saltos estão sendo percorridos, o que pode limitar o seu pedido?

    
por 27.04.2016 / 16:45