• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

Exemplos de configuração do servidor de filas de solicitação

Para relatar o enfileiramento de solicitações, o agente New Relic depende de um cabeçalho HTTP definido pelo servidor web frontend (como Apache ou Nginx) ou balanceador de carga (como HAProxy ou F5). Esses exemplos usam o cabeçalho X-Request-Start , pois ele tem suporte mais amplo em toda a plataforma.

Se isso não funcionar com a configuração do servidor para enfileiramento de solicitações, tente usar o cabeçalho X-Queue-Start . Caso contrário, a sintaxe deve ser a mesma.

Apache

O módulo mod_headers do Apache inclui uma variável %t formatada corretamente. Para habilitar relatórios de fila de solicitações, adicione este código à configuração do Apache:

RequestHeader set X-Request-Start "%t"

Nginx

Se você estiver usando o Nginx versão 1.2.6 ou superior e a versão mais recente do Ruby, Python ou agente PHP, o Nginx pode ser facilmente configurado para relatar o tempo de fila. (Para Nginx versões 1.2.6 ou inferiores, você deve recompilar o Nginx com um módulo ou patch.)

A configuração com Nginx 1.2.6 ou superior usa a variável ${msec} , que é um número em segundos com resolução em milissegundos. Para obter mais informações, consulte http://nginx.org/en/docs/http/ngx_http_core_module.html#variables.

Adicione as informações apropriadas à sua configuração do Nginx:

Nginx configuration

Values

Uso geral do Nginx

proxy_set_header X-Request-Start "t=${msec}";

Passageiro

Versão 5 ou superior:

>passenger_set_header X-REQUEST-START "t=${msec}";

Versões mais antigas:

passenger_set_cgi_param X_REQUEST_START "t=${msec}";

fastcgi

fastcgi_param HTTP_X_REQUEST_START "t=${msec}";

uWSGI

uwsgi_param HTTP_X_REQUEST_START "t=${msec}";

Balanceadores de carga F5

Para balanceadores de carga F5, use este trecho de configuração:

when HTTP_REQUEST_SEND {
# TCL 8.4 so we have to calculate the time in millisecond resolution
# Calculation from: https://groups.google.com/forum/? fromgroups=#!topic/comp.lang.tcl/tV9H6TDv0t8
set secs [clock seconds]
set ms [clock clicks -milliseconds]
set base [expr { $secs * 1000 }]
set fract [expr { $ms - $base }]
if { $fract >= 1000 } {
set diff [expr { $fract / 1000 }]
incr secs $diff
incr fract [expr { -1000 * $diff }]
}
set micros [format "%d%03d000" $secs $fract]
# Want this header inserted as if coming from the client
clientside {
HTTP::header insert X-Request-Start "t=${micros}"
}
}

Tempo de rede

Mesmo com o enfileiramento de solicitações configurado, a configuração do servidor frontend ainda pode afetar o tempo da rede nos seus dados do browser. Isso ocorre porque o servidor front-end não adiciona o cabeçalho do tempo de fila até que ele realmente aceite e processe a solicitação.

Os cabeçalhos de tempo de fila nunca podem levar em conta o backlog no soquete do ouvinte usado para aceitar solicitações. Por exemplo, se a configuração do servidor front-end resultar em um acúmulo de solicitações enfileiradas no soquete do ouvinte, o tempo de carregamento da página mostrará um aumento no tempo da rede.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.