Estou configurando uma pilha nginx e otimizando a configuração antes de ir ao ar. Ao executar um teste de estresse na máquina, fiquei desapontado ao ver as coisas chegando a 150 solicitações por segundo, com um número significativo de solicitações que levam> 1 segundo para retornar. Estranhamente, a máquina em si não estava respirando com dificuldade.
Finalmente pensei em fazer ping na caixa e vi tempos de ping em torno de 100-125 ms. (A máquina, para minha surpresa, está em todo o país). Então, parece que a latência da rede está dominando meus testes. Executando os mesmos testes de uma máquina na mesma rede que o servidor (tempos de ping <1ms) e vejo> 5000 solicitações por segundo, o que está mais alinhado com o que eu esperava da máquina.
Mas isso me fez pensar: como determinar e relatar uma medida "realista" de solicitações por segundo para um servidor web? Você sempre vê alegações sobre desempenho, mas a latência da rede não deve ser levada em consideração? Claro que posso atender a 5000 solicitações por segundo em uma máquina próxima ao servidor, mas não em uma máquina em todo o país. Se eu tiver muitas conexões lentas, elas eventualmente afetarão o desempenho do meu servidor, certo? Ou estou pensando nisso tudo errado?
Perdoe-me se isso é engenharia de rede 101 coisas. Sou desenvolvedor por profissão.
Atualização: Editado para maior clareza.
ab
tem uma opção de simultaneidade. O que você definiu? Além disso, se você estiver testando a partir de uma conexão ADSL doméstica, é provável que o teste seja dominado por sua largura de banda e não estará testando nada no servidor.