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

Redis-Bereitstellungskonfiguration – Master-Slave-Replikation

Sie können.

Es hängt alles von der Last ab, die diese anderen Server haben, es ist ein Problem der gemeinsamen Nutzung von Ressourcen. Um ehrlich zu sein, ist mein Hauptproblem bei Ihrer Architektur nicht die dedizierten oder nicht dedizierten Server, sondern die Tatsache, dass Sie einen Redis-Server (Master oder nicht) auf einem Host platzieren, der höchstwahrscheinlich mit dem Internet verbunden ist (expressJS-App). , was bedeutet, dass es ziemlich exponiert ist.

Wenn Sie die HTTP-Last auf Ihren Node/Express JS-Servern simulieren können, sehen Sie sich den Unterschied zwischen dem Ausführen einiger Benchmark-Tests auf Ihrem dedizierten Server und den nicht dedizierten Servern an:

Geben Sie auf einem laufenden Redis-Server Folgendes ein:

redis-benchmark -q -n 100000

Wenn die App-Server gehämmert werden und häufig alle Kerne verwenden, sollten Sie einen erheblichen Unterschied in den Benchmarks sehen.

Mein Vorschlag ist, fahren Sie mit Ihrem ersten Setup fort und fügen Sie eine Überwachung der Redis-Antwortzeiten hinzu und handeln Sie nur, wenn Sie müssen, was jetzt der Fall sein kann, wenn die Benchmarks sehr schlechte Ergebnisse zeigen.

Als Nebenbemerkung sollten Sie die Möglichkeit in Betracht ziehen, Hosts für Dienste, die Sie dem Internet zur Verfügung stellen, nicht mit Diensten zu teilen, die interne Funktionen für Ihre Anwendung ausführen.