Redis Hochverfügbarkeit und Lastausgleich


8

Ich verwende Redis 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 eine PHP-Webanwendung, in der einige Prozessstatusinformationen gespeichert sind (ich verwende hierfür PHPRedis), und ich möchte es auch für den PHP-Sitzungsspeicher in einem Cluster mit Lastenausgleich verwenden.

Ich habe bereits einen Load Balancing, den ich für Nginx und MySQL verwende (basierend auf pfSense).

Ich habe gesehen, dass Redis Cluster für Redis 3 existiert, aber ich habe auch einige Kommentare darüber gelesen, dass es nicht für die Produktion bereit ist, andere, die besagen, dass Redis keine vollständige Master / Master-Cluster-Konfiguration durchführen kann.

Was raten Sie?

  • Versuchen Sie es mit Redis Cluster
  • Wechseln Sie zu einer anderen key = value-Engine (CouchDB? Memcached? Others?)
  • Machen Sie sich nichts aus dem Lastenausgleich und verwenden Sie nur einen Knoten des Clusters pro Zeit sowie ein manuelles Failover, da ich keine Persistenz verwende
  • Andere Ideen?

Vielen Dank für Ihre Hilfe!

Antworten:



1

Eine naheliegende Lösung für Redis im Lastausgleich ist die Verwendung von Sentinel .

Soweit ich sehen kann, unterstützt predis Sentinel derzeit nicht. Sehen:

https://github.com/nrk/predis/issues/131

Eine mögliche Lösung kann Redis Sentinel + HAProxy-Failover sein, wenn Sie weiterhin Predis verwenden möchten.


@ Pierre.Vriens Vielleicht folge ich dir nicht richtig, aber soweit ich sehe, ist die Frage, wie man Redis ausbalanciert. Ich weise darauf hin, dass eine offensichtliche Lösung wie Sentinel bei Verwendung von Predis nicht funktioniert. Möglicherweise war das aus meiner Antwort nicht klar.
Kim

ok, das hilft ein bisschen, deine Antwort besser zu verstehen. Ich denke, Sie sollten es bearbeiten, um es auch irgendwie darin zu integrieren (und dann Ihren Kommentar löschen).
Pierre.Vriens
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.