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:
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.