Pesquisa de site

Como instalar e configurar o servidor Redis no Ubuntu


Redis é um armazenamento de estrutura de dados na memória de código aberto usado como banco de dados, cache, corretor de mensagens e mecanismo de streaming. Redis é um acrônimo que significa REmote DIServidor Dicionário. É semelhante ao memcached, mas o conjunto de dados não é volátil e outros tipos de dados (como listas e conjuntos) são suportados nativamente. Redis vem com redis-cli que fornece uma interface de linha de comando simples para o servidor Redis. Este tutorial orienta você nas etapas para instalar e configurar o servidor Redis no Ubuntu. Testei este guia no servidor Ubuntu 18.04 LTS, mas este guia pode funcionar em outras distros baseadas em Ubuntu/Debian.

Pré-requisitos

Para que o Redis funcione de forma eficiente, você deve ajustar seu servidor Ubuntu com as seguintes configurações.

1. Primeiro, defina a configuração overcommit memory do kernel Linux como 1. Para fazer isso, adicione vm.overcommit_memory=1 a /etc/sysctl.conf. Em seguida, reinicie ou execute o comando sysctl vm.overcommit_memory=1 para ativar a configuração. Definir overcommit_memory como 1 diz ao Linux para relaxar e executar a bifurcação de uma forma de alocação mais otimista, e isso é realmente o que você deseja para o Redis.

2. Em seguida, certifique-se de que o recurso Transparent Huge Pages do kernel Linux não afete o uso e a latência da memória do Redis. Para fazer isso, execute este comando:

echo never > sudo tee -a /sys/kernel/mm/transparent_hugepage/enabled

3. Certifique-se de que swap esteja ativado e que o tamanho do arquivo de swap seja igual à quantidade de memória em seu sistema. Se o seu sistema Linux não tiver swap configurado e sua instância do Redis consumir acidentalmente muita memória, o Redis poderá travar quando estiver sem memória ou o OOM killer do kernel do Linux poderá encerrar o processo do Redis. Quando a troca está habilitada, você pode detectar picos de latência e agir sobre eles.

Instale o servidor Redis no Ubuntu

O Redis Server está disponível nos repositórios padrão do Ubuntu. Portanto, você pode instalá-lo usando o gerenciador de pacotes apt-get.

Execute o seguinte comando para instalar o Redis Server em seu sistema Ubuntu:

sudo apt-get install redis-server

Após a instalação, verifique se o serviço Redis Server foi iniciado ou não com o comando:

sudo systemctl status redis-server

A saída de exemplo seria:

● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2018-06-02 12:40:26 IST; 6s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 2623 (redis-server)
Tasks: 4 (limit: 2322)
CGroup: /system.slice/redis-server.service
└─2623 /usr/bin/redis-server 127.0.0.1:6379

Jun 02 12:40:26 ubuntuserver systemd[1]: Starting Advanced key-value store...
Jun 02 12:40:26 ubuntuserver systemd[1]: redis-server.service: Can't open PID file /var/run/red
Jun 02 12:40:26 ubuntuserver systemd[1]: Started Advanced key-value store.

Por precaução, se ainda não tiver sido iniciado, você pode iniciá-lo conforme mostrado abaixo.

sudo systemctl enable redis-server
sudo systemctl start redis-server

Para verificar a versão instalada do Redis Server, basta executar:

redis-server -v

Exemplo de resultado:

Redis server v=4.0.9 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=1bc80a08306a3efd

Configurar o servidor Redis

O arquivo de configuração padrão do Redis é /etc/redis/redis.conf. Por padrão, o Redis escuta conexões de todas as interfaces de rede disponíveis no servidor. Também é possível escutar apenas uma ou múltiplas interfaces usando a diretiva de configuração "bind", seguida de um ou mais endereços IP.

Para fazer com que o servidor Redis ouça um endereço IP específico, edite o arquivo /etc/redis/redis.conf :

sudo vi /etc/redis/redis.conf

Encontre a seguinte linha:

bind 127.0.0.1

Altere-o conforme mostrado abaixo.

bind 192.168.43.2

Para fazer com que ele ouça vários endereços IP, altere-o como abaixo.

bind 192.168.43.2 192.168.43.3

Substitua os endereços IP pelos seus próprios valores. Em seguida, salve e feche o arquivo.

Se você estiver usando o firewall UFW, deverá permitir a porta 6379. Para fazer isso, execute:

sudo ufw allow 6379/tcp
sudo ufw reload

Reinicie o serviço Redis para aplicar as alterações.

sudo systemctl restart redis-server

Configurando Redis como cache

Se você quiser usar o Redis como um cache onde cada chave terá uma expiração definida, você pode usar o seguinte exemplo de configuração (assumindo um limite máximo de memória de 2 megabytes como exemplo):

maxmemory 2mb
maxmemory-policy allkeys-lru

Nesta configuração, não há necessidade de o aplicativo definir um tempo de vida para as chaves usando o comando EXPIRE (ou equivalente), pois todas as chaves serão despejadas usando um algoritmo LRU aproximado, desde que atingiu o limite de memória de 2 megabytes.

Reinicie o serviço redis para que as alterações tenham efeito.

sudo systemctl restart redis-server

Teste o servidor Redis

Conecte-se ao servidor Redis usando redis-cli na linha de comando.

redis-cli

Agora você está conectado ao seu servidor Redis.

127.0.0.1:6379>

A partir daqui, você pode executar comandos do Redis para testar sua funcionalidade. Vejamos um exemplo simples.

127.0.0.1:6379> set test "Welcome To OSTechNix"
OK
127.0.0.1:6379> get test
"Welcome To OSTechNix"
127.0.0.1:6379>

Para sair do prompt de comando do Redis, digite exit.

127.0.0.1:6379> exit

Para saber mais sobre o uso do Redis, consulte a página de documentação oficial.

Conclusão

Neste guia, discutimos o que é servidor Redis, como instalar e configurar o servidor Redis no Ubuntu Linux. Também discutimos como configurar o Redis como cache e, por fim, mostramos as etapas para testar se o servidor Redis está funcionando conforme o esperado.

Recurso:

  • Site Redis

Artigos relacionados