O Nginx já é rápido por natureza, mas a configuração-base que vem por defeito está longe de aproveitar todo o seu potencial. Com algumas técnicas de afinação, é possível tornar um site visivelmente mais rápido e capaz de aguentar muito mais tráfego com o mesmo hardware. Eis as otimizações que mais impacto têm, explicadas sem assumir que é especialista.
1. Ativar a compressão
Antes de enviar ficheiros de texto (HTML, CSS, JavaScript) para o navegador, o Nginx pode comprimi-los, reduzindo bastante o tamanho transferido. Menos dados significam carregamento mais rápido, sobretudo em ligações móveis. Formatos de compressão modernos conseguem reduções ainda maiores. É uma das otimizações mais simples e com retorno imediato.
2. Configurar a cache de conteúdo estático
Imagens, folhas de estilo, scripts e tipos de letra mudam raramente. Configurar o Nginx para dizer aos navegadores que guardem estes ficheiros localmente durante um tempo significa que, nas visitas seguintes, o navegador nem precisa de os pedir de novo. O resultado é uma navegação muito mais fluida para quem volta ao site.
3. Ativar o HTTP/2 (ou HTTP/3)
As versões modernas do protocolo HTTP permitem ao navegador carregar vários recursos em paralelo de forma muito mais eficiente do que o antigo HTTP/1.1. Ativar o HTTP/2 — e, quando disponível, o HTTP/3 — acelera o carregamento sem qualquer alteração ao conteúdo do site. Requer apenas que o site corra em HTTPS, o que já deve ser o caso.
4. Usar cache de páginas para conteúdo dinâmico
Para sites geridos por aplicações (como o WordPress), gerar cada página de raiz a cada pedido consome tempo e recursos. O Nginx pode guardar versões já geradas das páginas e servi-las diretamente, sem incomodar a aplicação. Para conteúdo que não muda a cada segundo, isto reduz drasticamente o tempo de resposta e a carga no servidor — desde que se exclua corretamente o que é verdadeiramente dinâmico (carrinho, login, checkout).
5. Afinar as ligações (keep-alive)
Manter as ligações abertas durante um curto período (keep-alive) evita o custo de estabelecer uma nova ligação para cada ficheiro. Bem afinado, este parâmetro melhora a eficiência sem desperdiçar recursos a manter ligações inativas. É um ajuste subtil mas que conta quando há muitos visitantes.
6. Otimizar o processamento da aplicação (PHP-FPM)
Em sites com PHP, o Nginx entrega o trabalho dinâmico a um processador (o PHP-FPM). Afinar quantos processos este mantém disponíveis, em função da memória do servidor, é determinante: poucos e o site forma fila em horas de ponta; demasiados e esgota-se a memória. Encontrar o equilíbrio certo para os recursos disponíveis é uma das afinações mais importantes — e mais ignoradas.
7. Ajustar os limites ao hardware real
Os valores por defeito do Nginx são conservadores, pensados para qualquer máquina. Ajustar o número de processos e de ligações ao hardware concreto do servidor permite-lhe usar a capacidade que realmente tem. Um servidor potente com configuração por defeito está, na prática, a desperdiçar recursos.
Medir antes e depois
Otimizar às cegas é arriscado. O método correto é medir o desempenho atual, aplicar uma alteração de cada vez e medir de novo, confirmando o ganho e garantindo que nada partiu. Ferramentas de teste de velocidade e as Core Web Vitals dão números concretos da melhoria que cada afinação traz à experiência real dos visitantes.
Cuidado: otimização não é improviso
Cada uma destas técnicas tem nuances, e uma configuração agressiva mal feita pode partir páginas dinâmicas, servir conteúdo desatualizado ou esgotar a memória do servidor. O valor de uma boa otimização do Nginx está em aplicar as técnicas certas, na medida certa para o hardware e o tipo de site — e validar que tudo continua a funcionar. Bem feito, o mesmo servidor passa a entregar páginas num instante e a aguentar muito mais visitantes.
Extraia o máximo do seu servidor Nginx
A Vuvo afina servidores Nginx para velocidade e capacidade: compressão, cache, HTTP/2 e otimização do processamento, medindo o ganho a cada passo. Mais rápido, com o mesmo hardware.
Ver configuração de Nginx/Apache