
Ich verwende Redis schon seit einiger Zeit und jetzt möchten wir zu einem redundanten Cluster wechseln, der fehlertolerant, hochverfügbar und lastausgeglichen ist.
Ich verwende Redis hauptsächlich für einige PHP-Webanwendungen, die Informationen zum Prozessstatus speichern (hierfür verwende ich PHPRedis), und ich möchte es auch für den PHP-Sitzungsspeicher in einem Cluster mit Lastenausgleich verwenden.
Ich habe bereits ein Load Balancing, das ich für Nginx und MySQL verwende (basierend auf pfSense).
Ich habe gesehen, dass es Redis Cluster für Redis 3 gibt, habe aber auch einige Kommentare darüber gelesen, dass es noch nicht produktionsbereit sei, und andere, in denen es heißt, dass Redis keine vollständige Master/Master-Cluster-Konfiguration durchführen kann.
Was ist Ihr Rat?
- Redis Cluster testen
- Wechseln Sie zu einer anderen Schlüssel=Wert-Engine (CouchDB? Memcached? Andere?)
- Ich mache mir keine Gedanken über Lastenausgleich und verwende immer nur einen Knoten des Clusters und ein manuelles Failover, da ich keine Persistenz verwende
- Andere Ideen?
Vielen Dank für Ihre Hilfe!
Antwort1
Mit Redis Sentinel können Sie mehrere Redis-Instanzen ausführen und das Failover für Sie übernehmen. http://redis.io/topics/sentinel
Antwort2
Eine naheliegende Lösung zum Lastenausgleich von Redis ist die VerwendungWächter.
Soweit ich sehe, unterstützt Predis Sentinel derzeit nicht. Siehe:
https://github.com/nrk/predis/issues/131
Eine mögliche Lösung kann seinRedis Sentinel + HAProxy-Failoverwenn Sie Predis weiterhin verwenden möchten.