Como medir o tempo de resposta de ponta a ponta sem o tempo de rede do cliente?

2

Em um aplicativo da web multicamada típico, como medir o tempo de resposta de quando o servidor recebe a solicitação para o servidor de horário enviar a resposta ? Eu quero focar no desempenho do lado do servidor, então eu não quero incluir o tempo que a resposta passou na internet.

O problema é que os logs do servidor da web geralmente registram o tempo de resposta, que inclui o tempo da rede. Por exemplo, no IIS, o campo "tempo gasto" no log de acesso informa a hora em que o servidor recebe a solicitação para o servidor de horário receber a confirmação de resposta do usuário final , consulte este artigo do MSDN para obter mais detalhes.

Existe alguma ferramenta de monitoramento ou configuração de servidor para permitir tal medição?

    
por IZhen 03.08.2011 / 09:57

3 respostas

2

Execute uma captura de rede no servidor e observe a hora em que o servidor recebeu a solicitação e a compare com a hora em que ela respondeu à solicitação. Isso mostrará quando a solicitação atingir a pilha de rede no servidor e quando ela sair da pilha de rede, o que deve ser uma aproximação aproximada da velocidade com que o servidor está processando a solicitação.

    
por 03.08.2011 / 14:39
1

O teste / amostragem deve ocorrer com o mínimo possível de rede intermediária para isolar / eliminar o impacto da latência da rede.

Quanto às ferramentas de teste, a Mercury Interactive tem algumas ferramentas muito boas. Desde então, eles foram comprados pela HP, então você pode procurar lá para ver o que está disponível atualmente.

    
por 03.08.2011 / 10:04
1

Basta adicionar o registro em log em seu aplicativo para medir o tempo envolvido em qualquer parte do ciclo de serviço inteiro que você deseja medir. Boas estruturas fazem isso para você automaticamente.

    
por 03.08.2011 / 10:35