
Estou usando o Redis há algum tempo e agora queremos mudar para um cluster redundante que seja tolerante a falhas, altamente disponível e com carga balanceada.
Eu uso principalmente o Redis para alguns aplicativos da web PHP que armazenam algumas informações de status do processo (estou usando o PHPRedis para isso) e gostaria de usá-lo também para armazenamento de sessões PHP em um cluster com carga balanceada.
Já tenho um Load Balancing que utilizo para Nginx e MySQL (baseado em pfSense).
Vi que o Redis Cluster existe para Redis 3, mas também li alguns comentários sobre o fato de ele não estar pronto para produção, outros que dizem que o Redis não pode fazer uma configuração completa de cluster master/master.
Qual é o seu conselho?
- Experimente o Cluster Redis
- Mude para outro mecanismo chave = valor (CouchDB? Memcached? Outros?)
- Não me importo com balanceamento de carga e uso apenas um nó do cluster por vez, e com failover manual, pois não uso persistência
- Outras ideias?
Muito obrigado pela sua ajuda!
Responder1
O Redis Sentinel permitirá que você execute várias instâncias do redis e lide com o failover para você. http://redis.io/topics/sentinel
Responder2
Uma solução óbvia para redis de balanceamento de carga é usarsentinela.
Pelo que posso ver, o predis não oferece suporte ao sentinela no momento. Ver:
https://github.com/nrk/predis/issues/131
Uma possível solução pode serSentinela Redis + failover HAProxyse você quiser continuar usando o predis.