By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
Alex Junio - Especialista em CloudAlex Junio - Especialista em CloudAlex Junio - Especialista em Cloud
  • Blog
  • Cursos
    • cPanel & WHM
    • Curso Vultr Cloud
    • Amazon Lightsail
    • Curso DigitalOcean
  • Hosting
    • cPanel
    • Plesk
    • CloudPanel
  • Cloud
    • AWS
    • DevOps
    • Arquitetura de Sistemas
  • Infraestrutura
    • Litespeed
    • Nginx
    • Docker
    • Linux
    • Alto Trafego
  • Nichos
    • Fintech
    • Magento
    • WordPress
Notification Show More
Font ResizerAa
Alex Junio - Especialista em CloudAlex Junio - Especialista em Cloud
Font ResizerAa
  • Home
  • Amazon AWS
  • WordPress
  • cPanel WHM
  • Magento
  • Blog
Search
Have an existing account? Sign In
Follow US
High Quality Design Resources for Free.
Início > Blog > WordPress > Hospedagem WordPress / Cache Nginx e Cache de Objetos
WordPress

Hospedagem WordPress / Cache Nginx e Cache de Objetos

Last updated: abril 25, 2022 7:47 pm
Alex Junio
Share
8 Min Read

Cache de Conteúdo Nginx

No Nginx podemos realizar uma série de configurações, uma delas é o cache de conteúdo. Ao ativarmos o cache de conteúdo, nosso site WordPress vai ganhar muito poder de performance, pois irá reduzir drasticamente o tempo de resposta e como consequência irá melhorar a experiência do usuário.

Contents
Cache de Conteúdo NginxTerceiro Benchmark: Nginx com CachePlugin de Cache Nginx para WordPressCache de Objetos com RedisConclusão

Podemos dizer bem a grosso modo como isso funciona. Quando uma página ou o resultado de uma página entrar for processada pelo PHP e MySQL, o Nginx irá armazenar o resultado no cache do servidor, e quando um segundo acesso for feito, o nginx irá responder muito mais rápido com o conteúdo da página. Isso é válido se a página não sofrer nenhuma alteração. As vantagens são:

  • Diminuição do consumo de CPU e RAM
  • Potencialização no número de conexões simultâneas que o WordPress poderá atender

Para configurar o Cache Nginx siga os passos abaixo.

1. Crie um diretório para que o Nginx utilize para armazenamento de cache persistente e de as permissões para que o usuário consiga manipular arquivos dentro do diretório do cache.

sudo mkdir -p /etc/nginx/cache
chown -R alex:alex /etc/nginx/cache

2. Abra o arquivo do bloco de configuração nginx do nosso wordpress

sudo nano /etc/nginx/sites-available/default

3. Adicione a linha abaixo logo na primeira linha do arquivo

fastcgi_cache_path /etc/nginx/cache levels=1:2 keys_zone=wordpress:100m inactive=60m;
hospedagem wordpress

4. Agora precisamos informar ao Nginx para que ele não coloque certas páginas em cache, como por exemplo a página de login ou telas do administrador.

Adicione o conteúdo antes da linha #### Locations

set $skip_cache 0;

# POST requests and urls with a query string should always go to PHP
if ($request_method = POST) {
    set $skip_cache 1;
}   
if ($query_string != "") {
    set $skip_cache 1;
}   

# Don’t cache uris containing the following segments
if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
    set $skip_cache 1;
}   

# Don’t use the cache for logged in users or recent commenters
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
    set $skip_cache 1;
}

5. A seguir, adicione as seguintes diretivas dentro do bloco do php:

fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
fastcgi_cache wordpress;
fastcgi_cache_valid 60m;

Ficará assim:

Salve o arquivo usando CTRL + X seguido de Y e Enter.

Por fim, adicione as diretivas abaixo no seu nginx.conf , logo abaixo da linha de logs.

sudo nano /etc/nginx/nginx.conf
##
# Cache Settings
##

fastcgi_cache_key "$scheme$request_method$host$request_uri";
add_header Fastcgi-Cache $upstream_cache_status;

Salve o arquivo usando CTRL + X seguido de Y e Enter, e reinicie o Nginx para validar todas as novas configurações.

sudo service nginx restart

Terceiro Benchmark: Nginx com Cache

Agora que já habilitamos o cache do Nginx, podemos fazer um terceiro teste de carga. Eu espero que agora o servidor utilize menos ou praticamente nada do PHP e MySQL, e apenas o Nginx que trabalhe fornecendo o conteúdo já armazenado em cache.

Ao analisar o gráfico do teste simulando novamente os 100 usuários, dessa vez os resultados foram surpreendentes. Conseguimos realizar 19.856 solicitações com sucesso, nenhum erro 400/400, nenhum timeout e nenhum erro de rede.

Como o conteúdo em cache estava sendo fornecido pelo Nginx, mesmo no pico máximo de 100 usuários o tempo de resposta ficou em média 151ms, muito abaixo dos primeiros testes que superavam

Observe que durante o teste o consumo de CPU ficou em média 11% 20% no máximo, o consumo de memória ficou em média 278M e 240M, e o Load Average praticamente zerado.

Nos processos do sistema vimos apenas o procsso do Nginx trabalhando rs.

Plugin de Cache Nginx para WordPress

Você precisa instalar um plugin no WordPress para que ele consiga limpar o cache do servidor sempre que uma atualização for feita. Felizmente existe um plugin gratuito que é o Nginx Cache, você pode instalar esse plugin e seguir para a configuração.

Uma vez que o plugin está instalado, você precisa ativa-lo e configura-lo. No WordPres clique em Ferramentas – Nginx Cache, e insira no Cache Zone Path o caminho do servidor onde o Nginx armazena o cache. Também habilite o Purge Cache para que ele limpe o cache sempre que algo for atualizado.

Por fim, salve e faça alguns testes mudando o título do WordPress ou alguma palavra em alguma página e veja se o conteúdo é atualizado corretamente.

Cache de Objetos com Redis

O cache de objetos armazena os resultados da consulta do banco de dados para que, ao invéz de executar uma mesma consulta em cada acesso do usuário, os resultados sejam servidos a partir do cache.

Isso também melhora consideravelmente o desempenho do WordPress, pois elimina a necessidade de consultas ao banco de forma desnecessária e consumindo recursos a toa.

O Redis é um software de código aberto e conhecido em todo o mundo, é o melhor software para essa finalidade. E é ele quem iremos instalar no nosso servidor WordPress.

Para instalar o Redis execute os comandos abaixo:

sudo apt install -y redis-server
sudo service php8.0-fpm restart

Você pode instalar o módulo Redis Nginx em seu servidor para executar um cache, mas para que o WordPress use o Redis como um cache de objeto, você precisa instalar um plug-in de cache de objeto Redis. 

Após o plugin for instalado e ativo, você precisa ativar o cache de objetos, basta clicar em Ativar o cache de objeto.

Se tudo estiver ok, você verá uma tela como a imagem abaixo:

Agora que o cache de objetos está ativo, o servidor pode ter um leve aumento no consumo de memória RAM uma vez que o Redis armazena cache na memória RAM e não no disco. No entanto, várias consultas que outrora seriam enviados direto para o banco, não vão mais precisar incomoda-lo na maioria das vezes.

Conclusão

Nesse capítulo vimos como configurar o Cache Nginx no servidor e o cache de Objetos com o Redis. Esses dois tipos de cache vão melhorar e muito o desempenho dos nossos projetos WordPress e manter uma estabilidade no nosso servidor.

No próximo capítulo vamos revisar tarefas cron e implementação uma solução de envio de e-mails no nosso WordPress.

TAGGED:conteudo-wpwordpress
Share This Article
Facebook Whatsapp Whatsapp LinkedIn Telegram Email Print
Previous Article hospedagem wordpress otimizacao nginx php fpm opcache Otimizando o Nginx e PHP no Servidor WordPress
Next Article hospedagem wordpress instalando wordpress Instalando o WordPress no Ubuntu
Nenhum comentário Nenhum comentário

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Conteúdos Relacionados

Servidor otimizado executando WordPress com scripts em cache e performance elevada

Como o OPcache Acelera o WordPress: Guia Completo de Otimização com Cache de Bytecode

abril 7, 2025
wordpress alto trafego alexjunio

WordPress não suporta alto tráfego ?

abril 2, 2025
vantagens desvantagens cloud wordpress

Vantagens e Desvantagens Hospedagem Cloud WordPress

março 14, 2025
o que e o litespeed guia litespeed litespeed

Litespeed Web Server – Servidor Web de Alta Performance

janeiro 16, 2025

Alex Junio - Especialista Cloud - 2026

Profissional com mais de 10 anos de experiência em gestão cloud e infraestrutura web.

All Rights Reserved.

Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?