Estou usando o Apache como proxy reverso para um aplicativo Tornado e atualmente carrego websockets de teste no sistema.
Ainda nos estágios preliminares, a configuração é a seguinte:
- Criei um script Node.js que estabelece uma conexão websocket com o servidor. Uma vez estabelecida a conexão, ela estabelece outra recursivamente.
- Eu executo esse script em até 3.000 conexões em meu laptop local e também o executo em outro servidor (data center diferente do servidor websocket) até 3.000 conexões também. Então, quando ambos aumentam, atingem o servidor com 6.000 conexões.
Acho que se eu deixá-lo aumentar e, de repente, encerrar cada script (cancelando todas as 6.000 conexões) e reiniciar o Apache, a carga do sistema do servidor aumenta loucamente. Estou falando de 300-500 (o servidor tem 16 núcleos).
Mas a parte mais louca é que nada parece ter sido afetado. Os resultados de vmstat
e iostat
mostram que o disco e a CPU estão quase ociosos. Meus aplicativos ainda funcionam muito bem. Eu até tenho uma consulta ao meu aplicativo Tornado em execução em um loop while na minha máquina local.
Além de um pequeno soluço na reinicialização, também não parece afetado. Alguma ideia de onde posso solucionar o próximo problema?