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.
- 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
- 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.
- 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
- 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.
- 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.
- 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.
- 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