Como instalar o Memcached no Ubuntu 20.04 LTS

Otimize o desempenho do seu banco de dados usando o servidor Memcached com seus aplicativos PHP e Python

Se você já sentiu a dor de uma alta carga de banco de dados causando lentidão em seus aplicativos da web e se perguntou “Existe uma maneira de diminuir a latência causada por consultas de banco de dados?”, Então a resposta a essa pergunta é um grande sim. Memcached, um daemon de cache de memória de vizinhança amigável está aqui para resolver todos os seus problemas! Armazenar o banco de dados em cache é um dos métodos mais simples para aliviar a carga do banco de dados e acelerar os aplicativos dinâmicos da web.

Memcached define-se como um sistema de armazenamento em cache de objetos de memória distribuída de alto desempenho, de natureza genérica, mas originalmente planejado para uso na aceleração de aplicativos da Web dinâmicos, aliviando a carga do banco de dados. Desenvolvido por Brad Fitzpatrick para seu site LiveJournal em 2003.

Neste artigo, veremos como instalar e configurar o Memcached no Ubuntu 20.04 e veremos seus clientes específicos de idioma.

Pré-requisitos

Um sistema instalado com Ubuntu 20.04 com um usuário com direitos administrativos, que é um sudo do utilizador.

Instalação

Memcached está disponível no repositório oficial do Ubuntu 20.04, além do Memcached também vamos instalar uma ferramenta CLI conhecida como libmemcached-tools para gerenciar o Memcached. Basta executar o seguinte comando para instalar ambos

sudo apt install memcached libmemcached-tools

Verificar instalação

Após a conclusão da instalação, o daemon do Memcached é iniciado sozinho em segundo plano. Para verificar a instalação, podemos usar um comando de libmemcached-tools pacote para obter estatísticas do servidor Memcached. Ou corra

memcstat --servers localhost

ou

memcstat - servidores 127.0.0.1

O memcstat comando mostra as estatísticas do servidor em execução. O comando acima resultará na saída exibida abaixo.

Várias estatísticas, como tempo de atividade em segundos, versão e pid será exibido como saída. No entanto, se nenhuma saída for exibida, é possível que o Memcached não esteja em execução. Portanto, você deve executar o seguinte comando para iniciar o servidor Memcached.

sudo systemctl start memcached

Para executar o servidor Memcached na inicialização do sistema, use o seguinte comando.

sudo systemctl enable memcached

Configurando Memcached

Se você tiver o memcached instalado no próprio servidor do site, não há necessidade de alterar o arquivo de configuração, pois o memcached está pré-configurado para funcionar com o localhost.

Por outro lado, se você instalou o Memcached em um sistema separado, precisará alterar a configuração para permitir o acesso do servidor remoto ao servidor Memcached.

Configurando o acesso remoto para o Memcached Server

Memcached é vulnerável a ataques DDoS (negação de serviço distribuída). Regra de firewall incorreta e portas UDP abertas deixarão seu servidor aberto e vulnerável a ataques DDoS.

Para atenuar o risco, podemos desativar o protocolo UDP para Memcached na configuração ou configurar o firewall apenas para permitir servidores confiáveis.

Fora da caixa, o Ubuntu vem sem portas TCP ou UDP abertas. Além disso, o daemon de firewall ufw (Firewall descomplicado) não é habilitado por padrão.

Vamos habilitar o firewall e definir a configuração do Memcached para que possamos mitigar a vulnerabilidade DDoS.

Primeiro, habilite o ufw executando o seguinte comando:

sudo systemctl enable ufw

Então comece o ufw serviço executando o comando abaixo:

sudo systemctl start ufw

Com o Firewall em execução, podemos finalmente configurar as regras do firewall. Em primeiro lugar, ative a porta 22 para permitir conexões SSH. O SSH é necessário para acessar remotamente o servidor desejado.

sudo ufw allow 22

Em segundo lugar, você precisa saber o endereço IP do cliente, que é o host do aplicativo da web, e o endereço IP do servidor, que é o servidor Memcached.

Para este caso, vamos supor que o IP do cliente seja 192.168.0.4 e IP do servidor Memcached para ser 192.168.0.5 em uma rede local.

Portanto, para permitir o acesso remoto do servidor memcached ao servidor cliente, execute:

sudo ufw allow de 192.168.0.4 para qualquer porta 11211

Substitua o 192.168.0.4 com o endereço IP do cliente desejado.

Em seguida, edite o arquivo de configuração do Memcached localizado em /etc/memcached.conf Correndo nano comando.

sudo nano /etc/memcached.conf

O memcached.conf arquivo de configuração será aberto com o editor nano, procure o -l 127.0.0.1 linha na configuração e substitua 127.0.0.1 com o seu IP do Memcached Server ou nesta instância 192.168.0.5.

Depois de substituir a prensa ctrl + o para escrever no arquivo de configuração e apertar enter, pressione ctrl + x para sair do nano.

Reinicie o servidor Memcached e ufw firewall executando o comando abaixo.

sudo systemctl restart memcached ufw

Agora terminamos a instalação e configuração do servidor Memcached no Ubuntu 20.04.

Conectando ao Memcached Server

Para usar o servidor Memcached, você precisará instalar um cliente específico do idioma. Felizmente, o Memcached oferece suporte para muitas linguagens populares.

Portanto, vamos ver como instalar php e Pitão cliente para Memcached.

PHP é a linguagem de script do lado do servidor mais popular e Memcached é usado principalmente por desenvolvedores da web para melhorar o desempenho do servidor de aplicativos da web com PHP.

Para instalar o suporte do memcached em php, corre:

sudo apt install php-memcached

Python também tem várias bibliotecas que podem funcionar e interagir com o servidor Memcached, como pymemcached ou python-memcached.

Você pode instalar o memcached para python executando os seguintes comandos pip:

pip install pymemcache
pip install python-memcached

Concluindo, vimos a instalação, configuração e alguns clientes específicos de idioma do Memcached no Ubuntu 20.04.

Para saber mais detalhes sobre o uso avançado do Memcached, dê uma olhada no Memcached Wiki.