No artigo anterior sobre tecnologias de armazenamento em cache, discuti como integrar o Redis ao Yii2 como um gerenciador de cache e sessão. Neste blog, vou demonstrar como usar o Memcached com Yii2.
O Memcached é um sistema de cache de memória distribuído gratuito e de código aberto. É usado principalmente para acelerar sites dinâmicos baseados em banco de dados, armazenando dados em cache para reduzir os tempos de execução e acesso. Cloudways vem pré-instalado e ativado Memcached nos servidores dos usuários e vou usá-lo neste tutorial.
O Yii2 fornece sua própria classe Memcache, que funciona tanto com Memcache quanto com Memcached. Vamos começar com esta aula.
Relacionado: Como hospedar o Yii 2 Framework no Cloudways usando o Composer
Adicionando classe Memcache no Yii2
Vá para a configuração dentro da pasta principal do Yii2 e abra web.php. Em componentes adicione esta linha:
'cache' => [ 'class' => 'yii\caching\MemCache', 'useMemcached' => true, ],
Configurando useMemcached como verdadeiro, O Yii2 saberá que estou usando o Yii2 Memcached.
Usando o Memcached no Yii2
Como eu já adicionei a classe Yii2 Memcache, é hora de adicionar e salvar alguns dados no Memcached. Vá para os controladores pasta no Yii2, crie um novo arquivo nele e nomeie-o MemController.php. Cole o seguinte código nele.
namespace app\controllers; use Yii; use yii\web\Controller; class MemController extends Controller { public function actionIndex() { $cache = Yii::$app->cache; $key = 'Mem'; $data = $cache->get($key); if ($data === false) { $key = 'Mem'; $data = 'My First Memcached Data'; $cache->set($key, $data); } echo $data; } }
Após salvar o arquivo, inicie o navegador e aponte-o para o índice deste controlador adicionando ?r=mem/index . O resultado seria esta linha:
Agora os dados são salvos no Memcached.
Atualize a página mais uma vez para verificar se os dados são provenientes do Memcached e não de outras fontes.
Vamos agora verificar os dados e verificar se o Memcached está sendo acessado.
Prepare-se para a atualização do Core Web Vitals
Ebook para acelerar seu site antes de começar a perder tráfego.
Obrigado
Sua lista está no caminho para sua caixa de entrada.
Verificando dados no Memcached
Há duas maneiras de verificar se os dados estão sendo salvos no Memcached
1. Usando o console:
Abra seu console e digite o seguinte comando para fazer uma conexão com o servidor Memcached:
telnet localhost 11211
Uma vez conectado, você terá a seguinte tela:
Agora estamos conectados ao servidor Memcached. Digite o seguinte para verificar se sua chave existe.
obtenha Mem
Se você vir a tela a seguir, seu valor foi adicionado com sucesso no MemCached.
Em seguida, verifique os acessos no Memcached. Digite o seguinte comando:
estatísticas
Agora procure a variável get_hits . Você encontrará o número de acessos que o Memcached recebeu e os dados retornados.
2. No painel Cloudways
No Cloudways, você pode pesquisar facilmente a taxa de acertos do Memcached acessando o servidor e escolhendo Monitoramento na barra lateral.
Na janela de monitoramento, selecione o Servidor guia e, na lista suspensa, selecione Taxa de acertos do Memcached. Um gráfico dos hits recebidos pelo MemCached será aberto.
Se você não conseguir ver a taxa de acertos, tente atualizá-la clicando no botão Atualizar botão.
Considerações finais
Neste tutorial eu discuti como usar o Memcached com Yii2 como cache padrão para o seu site. Se você tiver alguma dúvida ou quiser contribuir para a discussão, deixe um comentário abaixo.