Existe um limite no AWS ELB?

1

Estou executando uma pilha de OpsWorks com:

  • 10 instâncias de c3.2xlarge em execução em 4 zonas de disponibilidade.
  • A CPU nunca ultrapassa 5% em cada instância.
  • Cada instância está se conectando (por meio de uma camada do memcached) a uma instância RDS do db.r3.8xlarge (32 vCPU, 244 GiB RAM).
  • A CPU do DB está bem de 15 a 20%.
  • Cada instância do EC2 é definida para 250 conexões com o RDS (total de 2.500 conexões).
  • A memória de cada instância está aumentando gradualmente, mas acho que isso é um problema separado.
  • As métricas load_1 , load_5 , load_10 são todas muito altas 0,9-1,0.
  • Os usuários ativos que se conectam (com base em uma janela de 3 minutos) ficam presos entre 2500 a 3000 conexões.

Nós tentamos aumentar o tamanho das instâncias do RDS e, ao mesmo tempo em que impediu que o nosso RDS superasse, tentamos descobrir por que as conexões simultâneas parecem estar atreladas.

Existe alguma configuração no ELB que limita as conexões? A latência das chamadas é muito alta. Eu só estou tentando descobrir algo que pode estar estrangulando isso, já que todo o hardware parece estar funcionando bem.

    
por Nick Gotch 16.12.2016 / 06:43

1 resposta

2

Descobriu-se depois de muita escavação que havia uma única consulta sendo executada no banco de dados que envolvia order by rand() e que estava sendo executada em quase todos os 1,3 milhões de registros na tabela. Depois de corrigir essa consulta, o desempenho caiu para o normal.

    
por 28.12.2016 / 17:00