Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Architektur für Redis-Cache und Mongo für Persistenz

Es ist eigentlich sinnvoll, Redis und MongoDB zu assoziieren:Sie sind gute Teamplayer. Weitere Informationen finden Sie hier:

MongoDB mit redis

Ein entscheidender Punkt ist die von Ihnen benötigte Ausfallsicherheit. Sowohl Redis als auch MongoDB können so konfiguriert werden, dass ein akzeptables Maß an Ausfallsicherheit erreicht wird, und diese Überlegungen sollten zur Entwurfszeit besprochen werden. Außerdem kann dies die Bereitstellungsoptionen einschränken:Wenn Sie eine Master/Slave-Replikation sowohl für Redis als auch für MongoDB wünschen, benötigen Sie mindestens 4 Boxen (Redis und MongoDB sollten nicht auf demselben Computer bereitgestellt werden).

Jetzt ist es möglicherweise etwas einfacher, Redis für Warteschlangen, Pub/Sub usw. beizubehalten und die Benutzerdaten nur in MongoDB zu speichern. Der Grund dafür ist, dass Sie keine ähnlichen Datenzugriffspfade (der schwierige Teil dieser Aufgabe) für zwei Geschäfte mit unterschiedlichen Paradigmen entwerfen müssen. Außerdem verfügt MongoDB über eine integrierte horizontale Skalierbarkeit (Replikatsätze, Auto-Sharding usw.), während Redis nur über eine Do-it-yourself-Skalierbarkeit verfügt.

Bei der zweiten Frage wäre es am einfachsten, beide Läden anzuschreiben. Es gibt keine integrierte Funktion zum Replizieren von Redis-Aktivitäten in MongoDB. Das Entwerfen eines Daemons, der auf eine Redis-Warteschlange lauscht (wo Aktivitäten gepostet würden) und in MongoDB schreibt, ist jedoch nicht so schwierig.