2016-11-14 2 views
0

Ich verwende Redis, um einige Schlüssel/Wert-Daten zu lesen (die Daten müssen persistent sein, obwohl es sich im Laufe der Zeit kaum ändern wird, wird es nur einen ersten Daten-Upload geben). Im Moment habe ich Redis in meiner lokalen Umgebung installiert, um die Logik zum Lesen der Daten zu implementieren.Lesen von ElastiCache-Inhalt in Speicher

Allerdings muss ich auch darüber nachdenken, wie Redis bei der Bereitstellung der Anwendung aussehen wird. Da die Anwendung in AWS bereitgestellt wird, muss ich wahrscheinlich ElastiCache verwenden. Da es sich bei ElastiCache jedoch um einen weiteren Webservice innerhalb des AWS-Ökosystems handelt, müssen die Abfragen auf Redis im Gegensatz zu der Situation in meiner Entwicklungsumgebung, in der Redis-Inhalte gespeichert sind, über den Draht übertragen werden.

Macht das Sinn? Soll ich die Anwendung so ändern, dass Redis-Daten zuerst in eine In-Memory-Variable geladen werden, um sicherzustellen, dass die Daten in allen Umgebungen immer aus dem Speicher gelesen werden?

Antwort

0

Nein, das wäre nur ein Overkill. Redis funktioniert ziemlich schnell und der einzige Overhead, den Sie im Vergleich zu einer localhost Instanz haben, ist die Netzwerklatenz. Wenn Sie den ElasticCache in derselben Zone wie Ihre AWS-Bereitstellung verwenden, können Sie problemlos ausführen. Es ist nicht notwendig, diese Daten in den lokalen Speicher zu kopieren, was zu Problemen wie der Konsistenz von zwischengespeicherten Daten und zweistufigen Invalidierungen führen würde.

Verwandte Themen