O Apache tem uma teoria de 'Máximo de Clientes'
Esse é o número de conexões simultâneas com as quais ele pode lidar. IE, se um servidor apache tiver um limite de 'max clients' de 100 e cada solicitação levar 1 segundo para ser concluída, ele poderá lidar com um máximo de 100 solicitações por segundo.
Um aplicativo como o SlowLoris inundará um servidor com conexões; no nosso exemplo, se o SlowLoris enviar 200 conexões por segundo, e o Apache puder lidar apenas com 100 conexões por segundo, a fila de conexões continuará aumentando e usará toda a memória da máquina um assalto. É semelhante à maneira como o LOIC do Anonymous funciona.
NGINX e Lighttpd (entre outros) não têm um número máximo de conexões, eles usam threads de trabalho, portanto, teoricamente, não há limite para o número de conexões que eles podem manipular.
Se você monitorar suas conexões Apache, verá que a maioria das conexões ativas são 'Enviando' ou 'Recebendo' dados do cliente. No NGINX / Lighttpd, eles simplesmente ignoram essas solicitações e as executam em segundo plano, sem consumir os recursos do sistema, e só precisam processar conexões com alguma coisa acontecendo (análise de respostas, leitura de dados de servidores back-end etc.)
Na verdade, eu respondi a uma pergunta semelhante esta tarde, portanto as informações também podem ser interessantes para você Reduzindo o enfileiramento de pedidos do Apache