Como funciona o proxy nsx websocket?

2

Gostaria de saber como o nginx lida com conexões ativas de websocket? Existem muitas limitações, como um número de arquivos abertos, com um máximo de 65k conexões TCP entre IP < - > (IP, porta) e assim por diante.

Quando estou usando nginx como proxy reverso e tenho, digamos, 5 nós no upstream de um websocket, existem até 65k conexões TCP ativas entre nginx e cada nó? No caso, se eu tiver mais de 300 mil clientes ativos atendidos pelo nginx, é claro. Ou nginx websocket proxy funciona de outra maneira?

E minha outra pergunta: quais parâmetros (limites) devo ajustar para lidar com tantas conexões?

    
por Ivan Velichko 17.09.2015 / 21:54

1 resposta

3

Sua compreensão está correta, mas seu limite real será de alças de arquivo. Cada conexão de soquete requer um identificador de arquivo do Linux e o ulimit padrão deles é 1024. / proc / sys / fs / file-max define o limite para todo o sistema. Você precisará aumentar esses limites para lidar com altas taxas de conexão nginx.

O pessoal do NGINX testou até 50.000 conexões em um servidor de seis núcleos:

link

A realidade é que, se você quiser dezenas de milhares de conexões no mundo real, você precisa ir a vários proxies reversos atrás de um DNS round-robin. Este é, por exemplo, como funciona o Elastic Load Balancer da Amazon. Se você procurar por algo na nuvem da AWS como o Slack.com e digitar 'nslookup slack.com', você terá uma longa lista de endereços IP. Digite-o novamente e você obterá uma lista diferente com os endereços IP girados para que um diferente esteja no topo da lista. Esses são proxies reversos do Amazon AWS ELB () em um DNS round-robin que encaminha solicitações para os servidores de aplicativos reais. A parte difícil nesse ponto é gerenciar o registro e o cancelamento do registro de proxies reversos do DNS à medida que eles vão e vêm, ou o gerenciamento do controle de endereço IP, se é isso que você pretende fazer. Problemas difíceis e, portanto, por que uso a solução da Amazon em vez de usar a minha própria solução.

    
por 18.09.2015 / 01:36