TTFB alto: como descobrir onde se perde o tempo de resposta do servidor

O TTFB (time to first byte) é o tempo que passa desde o pedido até chegar o primeiro byte da resposta. Se é alto, a página demora a começar, e tudo o resto (LCP incluído) fica atrasado. Mas o número junta várias esperas: resolver o nome, ligar, negociar o HTTPS e, por fim, o servidor a montar a página. Só a última é “do servidor”. Separe-as antes de culpar alguém.

Passo 1: separar as esperas

1 Num terminal (no seu computador), corra três vezes: curl -o /dev/null -s -w "dns %{time_namelookup} ligar %{time_connect} tls %{time_appconnect} primeiro-byte %{time_starttransfer} total %{time_total}\n" https://seudominio.tld/.
2 Cada número é acumulado. Para saber quanto durou cada parte, subtraia ao seguinte o anterior. A espera do servidor é primeiro-byte menos tls.
3 Fique com o valor do meio das três medições. Uma só não prova nada.
Parte Se é grande, aponta para
dns A resolução do nome: o fornecedor do DNS ou o seu resolvedor. Veja rápido para si, lento para os outros.
ligar menos dns A distância até ao servidor, ou uma rede lenta do lado de quem mede.
tls menos ligar A negociação do HTTPS. Raro ser a causa.
primeiro-byte menos tls O servidor a montar a página. É o que se trata nos passos seguintes.

Passo 2: se a espera é do servidor

1 A página sai da cache? Peça-a duas vezes seguidas. Num site WordPress com o LiteSpeed Cache, o cabeçalho x-litespeed-cache devia dizer hit na segunda. Se diz sempre miss ou não aparece, a página é refeita em cada visita. Veja as primeiras definições do LiteSpeed Cache e as regras de cache.
2 Há uma cadeia de redireccionamentos? curl -sIL https://seudominio.tld/ mostra cada salto. Cada um acrescenta um pedido inteiro. Chegue ao endereço final num só.
3 Consultas à base de dados lentas. Páginas com listas, pesquisas e filtros são as primeiras. Veja consultas lentas: como as achar.
4 Plugins pesados ou chamadas a serviços externos dentro da própria página (uma API que demora). Desligue-os um de cada vez e meça. Veja o que consome processador num site.
5 Uma versão antiga do PHP. A mesma página corre mais depressa numa versão mais nova. Veja mudar a versão do PHP sem partir o site.
6 Tarefas internas no meio da visita. Em WordPress, o WP-Cron corre quando alguém visita. Veja o admin-ajax a consumir recursos.
Um TTFB bom na página inicial não prova nada sobre as outras. A inicial está quase sempre em cache. Meça a página que se queixam de ser lenta, com sessão iniciada e sem ela, e a página de uma pesquisa ou de um produto.
Aceite que a primeira visita é sempre mais lenta. É a que constrói a cópia de cache. O que conta é a segunda em diante. Se os visitantes caem quase todos na primeira (conteúdo novo a cada hora, por exemplo), considere aquecer a cache. Veja instalar e afinar uma cache de páginas.

Separou as esperas e o primeiro byte continua alto com a cache a funcionar? Envie-nos os números das três medições e o endereço.

Abrir um pedido de suporte

VEJA TAMBÉM

Medir a velocidade do site: que ferramentas e o que os números querem dizer

O site está lento: o que realmente faz diferença

O site está lento: o que medir antes de mudar de plano

Como corrigir um LCP lento

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 5.940,00 Kz/mês (plano de 3 anos, com cupão)

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?