
Estoy usando Redis por algún tiempo y ahora queremos pasar a un clúster redundante que sea tolerante a fallas, altamente disponible y con carga equilibrada.
Principalmente uso Redis para algunas aplicaciones web PHP que almacenan información sobre el estado del proceso (estoy usando PHPRedis para esto) y me gustaría usarlo también para el almacenamiento de sesiones PHP en un clúster con equilibrio de carga.
Ya tengo un Load Balancing que uso para Nginx y MySQL (basado en pfSense).
Vi que Redis Cluster existe para Redis 3, pero también leí algunos comentarios sobre el hecho de que no está listo para producción, otros que dicen que Redis no puede realizar una configuración completa de clúster maestro/maestro.
¿Cuál es tu consejo?
- Pruebe el clúster de Redis
- Pasar a otro motor clave=valor (¿CouchDB? ¿Memcached? ¿Otros?)
- No se preocupe por el equilibrio de carga y use solo un nodo del clúster por vez y realice una conmutación por error manual, ya que no uso la persistencia.
- ¿Otras ideas?
¡Muchas gracias por su ayuda!
Respuesta1
Redis Sentinel le permitirá ejecutar múltiples instancias de Redis y manejará la conmutación por error por usted. http://redis.io/topics/sentinel
Respuesta2
Una solución obvia para equilibrar la carga de Redis es utilizarcentinela.
Hasta donde puedo ver, predis no es compatible con Sentinel por ahora. Ver:
https://github.com/nrk/predis/issues/131
Una posible solución puede serRedis centinela + conmutación por error de HAProxysi quieres seguir usando predis.