Como eu reconheceria o "problema de alimentação em colher" em um servidor webapp dinâmico?

4

O "problema de alimentação de colher", como foi explicado recentemente para mim, acontece quando as conexões com o seu servidor de aplicativos estão amarradas, alimentando os dados através de conexões de rede lentas para seus clientes. Isso faz sentido para mim e agora eu entendo a importância de colocar um proxy altamente concorrente na frente dos meus servidores de aplicativos.

A minha pergunta é: como foi a primeira pessoa a reconhecer este problema? Quais ferramentas * e técnicas de solução de problemas me ajudariam a reconhecer esse problema se eu não tivesse explicado isso para mim?

    
por Don Spaulding 19.03.2010 / 17:00

3 respostas

2

Dependendo da arquitetura, também é possível ver baixa utilização da CPU do espaço do usuário da CPU, mas uma carga maior devido aos processos localizados no bloqueio da fila de espera nas rotinas de E / S da rede do espaço do kernel. Se você estiver executando um sistema de pool de threads, muitas vezes você terá solicitações negadas ou enfileiradas com baixo uso de CPU, novamente os contadores de espera de IO serão altos.

Às vezes, a criação de segmentos / funcionários adicionais alivia o problema temporariamente até que seu sistema atinja outra massa crítica.

Com toda a honestidade, parece muito com o que você vai encontrar quando tiver um servidor NFS lento.

    
por 19.03.2010 / 18:42
1

Se você estiver usando o Apache, o sintoma típico é um monte de conexões em um estado 'W' ao olhar para a página de status do servidor.

    
por 30.03.2010 / 22:40
0

Não é uma ferramenta * nix, mas eu acho útil o espelhamento de porta de switch gerenciado em combinação com o Wireshark ou o Wildpackets. Usando filtros, é possível comparar a velocidade de transações semelhantes que são executadas rapidamente ou não.

    
por 19.03.2010 / 18:17