O Redis é um armazenamento de dados em memória de chave-valor, sem esquema, para aplicativos em tempo real. Os desenvolvedores podem usá-lo como um banco de dados NoSQL, uma camada de dados secundária ou uma camada de cache para processos intensivos em computação.
Redis oferece armazenamento persistente que pode armazenar em cache os estados da sessão do site e outros dados. Aplicativos que usam o Redis como uma camada de cache geralmente realizam uma consulta complexa ao banco de dados ou uma chamada de API e, em seguida, armazenam em cache os resultados. Ele pode armazenar e recuperar objetos de maneira rápida e eficiente. Portanto, o Redis é um excelente companheiro para o WordPress, que utiliza um servidor de banco de dados relacional mais tradicional como seu armazenamento de conteúdo principal.
A interface de linha de comando (CLI) do Redis pode ser usada para você se comunicar com o servidor Redis do seu site WordPress. Usando a CLI do Redis (invocada na linha de comando como redis-cli
), você pode solicitar e receber respostas do servidor Redis programaticamente, monitorar os comandos executados em uma instância do Redis, verificar a latência de uma instância e observar o estado do servidor em tempo real.
Este tutorial mostra a você como integrar o Redis ao seu site WordPress e usar a CLI do Redis para executar operações de criação, leitura, atualização e exclusão (CRUD) a partir do seu terminal.
Conecte o Redis ao WordPress usando o DevKinsta
Para conectar um site do WordPress a um banco de dados do Redis, estamos usando o DevKinsta, uma ferramenta gratuita de um clique para criar, desenvolver e implantar rapidamente sites WordPress a partir do seu ambiente local.
O DevKinsta cria localmente um site WordPress Dockerizado com as versões mais recentes de suas dependências, incluindo um servidor Web Nginx, PHP e um banco de dados MariaDB compatível com MySQL. Ele também oferece suporte à CLI para o WordPress.
O DevKinsta está disponível para Windows, Linux e macOS. Você pode encontrar mais informações sobre a instalação ao fazer o download do DevKinsta.
Após a conclusão da instalação, crie e instale um novo site WordPress localmente em seu dispositivo usando a pilha de hospedagem padrão.
O DevKinsta oferece três opções para a criação local de sites WordPress: um site totalmente novo com configurações padrão, um novo site com configurações personalizadas e a clonagem de um site existente hospedado na Kinsta para o seu ambiente de desenvolvimento local.
Este tutorial usa a primeira opção com as configurações padrão e as versões mais recentes do Nginx, PHP, MariaDB e WordPress.
Depois de seguir essas etapas, você pode visualizar o painel do novo site no DevKinsta:
Observe o caminho do site. Esse é o diretório que contém os arquivos e pastas do site local. O link do painel WP Admin aparece no canto superior direito. Por fim, observe o Site Host, que é a URL que aponta para o seu novo site de desenvolvimento.
Você pode abrir o Docker Desktop para listar todos os contêineres em execução como dependências no seu projeto DevKinsta. Para fazer isso, clique em Containers na parte superior da barra lateral esquerda:
Agora que seu site WordPress e as dependências do contêiner estão em execução, você está pronto para conectar um banco de dados Redis ao seu site:
- Clique no botão WP Admin no DevKinsta para navegar até seu painel de controle do WordPress.
- Clique na aba Plugins no lado esquerdo.
- Clique em Add New e procure por “Redis Object Cache”
Clique em Install Now ao lado do plugin. Em seguida, confirme se ele está ativo clicando na aba Installed Plugins.
Quando ativado pela primeira vez, o plugin Redis Object Cache informará que não consegue se conectar a um banco de dados Redis. Resolvemos isso criando um contêiner com uma instância do Redis no Docker.
Vamos abrir um terminal e criar um contêiner de rede chamado redisnet no qual você executará a imagem do Redis:
docker network create -d bridge redisnet
Agora, crie e execute uma imagem do Redis como um contêiner autônomo dentro desse contêiner de rede:
docker run -d -p 6379:6379 --name demo_redis --network redisnet redis
Depois de iniciar a imagem do contêiner, verifique no Docker Desktop se a imagem do Redis está em funcionamento:
Lembre-se de que seu site WordPress foi iniciado automaticamente dentro de um contêiner do Docker. Você pode confirmar o nome e o ID da rede do contêiner:
docker network ls
Acima, a versão encurtada do ID de rede para devkinsta_network é d1fa155f7a4d
. Usaremos isso mais tarde.
Uma maneira de conectar o cluster e o servidor Redis ao seu site WordPress local é conectar diretamente as redes Redis e DevKinsta. Primeiro, verifique o ID do contêiner para o Redis. Aqui, com o comando Docker para listar contêineres, estamos usando a opção -l
(mais recente) para mostrar apenas o contêiner criado mais recentemente:
docker ps -l
Neste exemplo, o ID encurtado do contêiner aparece como c3ffc630e44c
.
Conecte seu contêiner Redis à rede DevKinsta usando o ID do contêiner no lugar do nosso no comando abaixo.
docker network connect devkinsta_network c3ffc630e44c
Você deve ter adicionado com êxito a imagem do contêiner Redis à lista de contêineres em execução dentro de devkinsta_network. Para verificar o endereço IP de rede do contêiner Redis, execute o seguinte comando, substituindo nosso ID devkinsta_network pelo ID que você encontrou usando o comando network ls
em seu projeto:
docker inspect d1fa155f7a4d
Na imagem acima, o endereço IP do contêiner demo_redis é 172.172.0.6. Anote o endereço IP em seu projeto antes de prosseguir com a conexão.
Navegue até a raiz do site do WordPress em sua máquina local, que está no caminho do site exibido no DevKinsta. Abra o arquivo wp-config.php em um editor de texto e adicione o seguinte código na seção de variáveis de configuração personalizadas:
define('WP_REDIS_CLIENT', 'predis');
define('WP_REDIS_HOST', '172.172.0.6');
define('WP_REDIS_PORT', '6379');
O endereço IP que você usa para WP_REDIS_HOST
é o que você descobriu para demo_redis quando executou o comando docker inspect
.
Esse código de configuração adiciona o cliente Redis, o host e a porta para que o plugin possa acessar o servidor Redis dentro do mesmo contêiner Docker e da mesma rede que o DevKinsta.
Para confirmar que o plugin está conectado e em execução, você pode usar o código de configuração:
- Navegue até sua página de plugins do WordPress no painel de controle.
- Clique no link Configurações para o Redis Object Cache.
- Na página Settings, clique no botão Enable Object Cache.
Quando o Redis Object Cache estiver ativado, sua página de configurações terá a seguinte aparência:
Como iniciar a CLI do Redis
A ferramenta Redis CLI (redis-cli
) vem junto com um servidor Redis. Você pode instalar um servidor Redis nos sistemas operacionais Windows, macOS e Linux.
No entanto, já estamos executando o Redis no Docker aqui, portanto, podemos iniciar a ferramenta CLI dentro do nosso contêiner demo_redis.
Acima, quando usamos o comando docker ps
, aprendemos o ID do contêiner que está executando a imagem do Redis. O nosso começou com c3ffc630e44c
. Podemos usar esse ID truncado para direcionar o demo_redis e iniciar um shell de linha de comando dentro dele:
docker exec -it c3ffc630e44c /bin/sh
Agora você pode chamar a ferramenta redis-cli
:
Você pode fazer ping no servidor para testar a conexão:
ping
Para se conectar ao servidor Redis usando seu endereço IP e porta e testar essa conexão, execute o seguinte comando (usando o endereço IP do seu contêiner demo_redis ):
redis-cli -h 172.172.0.6 -p 6379 ping
Você se conectou com sucesso ao servidor Redis na máquina local e no contêiner do Docker.
Em seguida, verifique se o site do WordPress está armazenando dados no cache do Redis usando redis-cli
e seu comando keys *
para exibir todas as chaves no banco de dados:
Você pode ver que alguns dados do WordPress já foram salvos no cache do Redis.
Operações CRUD da CLI do Redis
Você pode executar operações CRUD em seu banco de dados Redis usando a ferramenta CLI.
Vamos obter o valor de uma chave que copiamos de nossa solicitação anterior da CLI do Redis keys *
.
get :u.:~8r]mC->Re/gG!&mGU.[{+;]t7o<H~)c*pcU=Lx_Vs{9JkdxkL:X;M-@Y$Svwp:user_meta:1
Vamos manipular o conteúdo do banco de dados Redis invocando redis-cli
e usando os comandos set
, get
e del
para criar um par de chave/valor, consultar a nova chave e excluí-la:
Acima, a tentativa de recuperar o valor de uma chave excluída retorna nil
.
Há muitas outras operações avançadas disponíveis quando você usa a CLI do Redis.
Resumo
A CLI do Redis é uma maneira fácil de testar os comandos do Redis no seu site antes de colocá-lo em um ambiente ativo. Também é uma ótima maneira de monitorar a atividade em uma instância do Redis.
No Docker, uma instância do Redis fornece as ferramentas de que você precisa para gerenciar o banco de dados, inclusive redis-cli
, agrupadas em um único contêiner.
Enquanto isso, a abordagem Dockerizada do DevKinsta facilita o desenvolvimento de um site WordPress em uma máquina local e, em seguida, a implantação na produção com apenas alguns cliques do mouse.
Se você ainda não está gerenciando alguns dos 118,000 sites WordPress hospedados pela Kinsta, descubra os recursos avançados que estão disponíveis em todos os nossos planos de Hospedagem Gerenciada de WordPress.
Deixe um comentário