Configuração do Redis - Guia Detalhado

Visão Geral da Configuração

O arquivo de configuração principal do Redis está localizado em /etc/redis.conf. Este documento apresenta as configurações mais utilizadas para otimizar e securing seu servidor Redis.

  1. Configuração de Unidades

O Redis define unidades básicas de medida no início do arquivo de configuração:

  • Apenas bytes são suportados como unidade base
  • Os nomes de diretivas não区分大小写 por padrão
  1. Configuração de INCLUDES

A diretiva include permite reutilizar configurações comuns entre múltiplas instâncias do Redis. Isso é útil quando você tem vários servidores Redis com configurações compartilhadas.

  1. Configurações de Rede

3.1 bind - Endereços de Binding

bind 127.0.0.1 -::1

Por padrão, o Redis apenas aceita conexões locais. Para permitir acesso remoto, comente esta linha ou altere para o endereço IP do servidor.

3.2 protected-mode

O modo protegido está habilitado por padrão (protected-mode yes). Para permitir conexões remotas, defina como no.

3.3 port

A porta padrão do Redis é 6379. Pode ser alterada, mas deve estar no intervalo de 1 a 65535.

3.4 timeout

timeout 0

Define o tempo (em segundos) que um cliente ocioso permanece conectado. O valor 0 desatiav esta funcionalidade.

3.5 tcp-keepalive

tcp-keepalive 300

Verifica a disponibilidade de conexões a cada N segundos. O valor recomendado é 60 segundos ou superior.

Por que usar keepalive?

  • TCP suporta conexões persistentes e efêmeras
  • Em conexões longas sem atividade, clientes podem desconectar inesperadamente
  • Sem keepalive, conexões parcialmente abertas acumulam e consomem recursos
  • O mecanismo de keepalive detecta conexões inválidas rapidamente
  1. Configurações Gerais

4.1 daemonize

daemonize yes

Define se o Redis executará em segundo plano como processo daemon.

4.2 pidfile

pidfile /var/run/redis_6379.pid

Especifica o local onde o arquivo de PID será armazenado. Cada instância gera um arquivo único.

[root@servidor ~]# ps -ef | grep redis
[root@servidor ~]# cat /var/run/redis_6379.pid

4.3 loglevel

loglevel notice

O Redis possui quatro níveis de log:

  • debug: Muito detalhado, ideal para desenvolvimento
  • verbose: Informações extras, menos que debug
  • notice: Recomendado para produção
  • warning: Apenas avisos importantes
127.0.0.1:6379> config get loglevel

4.4 logfile

logfile ""

Por padrão, logs são exibidos no console. Para armazenar em arquivo:

logfile "/var/log/redis/redis.log"

Reinicie o Redis para aplicar esta mudança.

4.5 databases

databases 16

Define o número de bancos de dados disponíveis. O banco padrão é o 0. Utilize o comando select para alternar entre eles.

  1. Configurações de Segurança

5.1 Definindo Senha no Arquivo de Configuração

requirepass MinhaSenha123

A senha deve ser configurada no arquivo redis.conf e o serviço precisa ser reiniciado.

127.0.0.1:6379> auth MinhaSenha123
127.0.0.1:6379> acl list
127.0.0.1:6379> acl whoami

5.2 Definindo Senha via Linha de Comando

127.0.0.1:6379> config get requirepass
127.0.0.1:6379> config set requirepass NovaSenha456

Nota: Esta configuração é temporária e será perdida após reiniciar o Redis.

  1. Configurações de Limites

6.1 maxclients

Define o número máximo de conexões simultâneas. O padrão é 10000. Quando atingido, novas conexões são rejeitadas.

6.2 maxmemory

maxmemory 256mb

Limita a memória máxima usada pelo Redis:

  • Instâncias 32-bit são limitadas a 3GB por padrão
  • Instâncias 64-bit não têm limite por padrão
  • O valor mínimo é 1MB quando configurado

Recomendações:

  • Para cache simples: 64-128MB geralmente basta
  • Para banco de dados: use 50-75% da memória disponível
  • Se usar snapshots (RDB), reserve pelo menos o dobro da memória usada
  • Considere outros processos (Java, NGINX, etc.) ao definir este valor

6.3 maxmemory-policy

maxmemory-policy noeviction

Política quando a memória atinge o limite:

  • volatile-lru: Remove chaves expiradas usando LRU
  • allkeys-lru: Remove qualquer chave usando LRU
  • volatile-random: Remove chaves expiradas aleatoriamente
  • allkeys-random: Remove chaves aleatoriamente
  • volatile-ttl: Remove chaves prestes a expirar
  • noeviction: Retorna erro em operações de escrita

6.4 maxmemory-samples

maxmemory-samples 5

Define o número de chaves amostra para algoritmos LRU e TTL. Valores entre 3 e 7 oferecem bom equilíbrio entre precisão e desempenho.

  1. Observações Importantes

  • Todas as mudanças no arquivo de configuração requerem reinício do Redis
  • Consulte configurações usando: config get <parâmetro>
  • Modifique configurações temporariamente com: config set <parâmetro> <valor>
  • Configurações via linha de comando são perdidas ao reiniciar
127.0.0.1:6379> config get loglevel
1) "loglevel"
2) "notice"

127.0.0.1:6379> config set requirepass NovaSenha456
OK

127.0.0.1:6379> auth NovaSenha456
OK

Publicado em 6-24 03:34