Managed Redis
Managed Redis auf Lizard (lizard.build) ist ein Redis-Server für Caching, Warteschlangen, Rate Limiting und Pub/Sub. Neue Instanzen laufen standardmäßig mit Redis 8. Fügen Sie eine mit lizard add redis hinzu; Ihre Services lesen REDIS_PRIVATE_URL oder REDIS_URL über einen Verweis wie ${{redis.REDIS_PRIVATE_URL}}. Die Instanz hat keine Eviction-Richtlinie und keine Append-only-Datei. Speichern Sie darin nur Daten, die sich neu aufbauen lassen. Einen Überblick und die Preise finden Sie auf der Seite zu Managed Redis.
Bereitstellen
lizard add redisDas erste Redis-Add-on heißt redis, daher funktioniert ${{redis.REDIS_URL}} sofort.
Umgebungsvariablen
| Variable | Beschreibung |
|---|---|
REDIS_URL | Vollständige Verbindungszeichenfolge über den öffentlichen Endpunkt (redis://…) |
REDIS_PRIVATE_URL | Verbindungszeichenfolge über das private Netzwerk des Projekts (<name>.lizard.internal:6379) |
Beide Zeichenfolgen haben die Form redis://default:<password>@<host>:<port>. Die private funktioniert nur von Services im selben Projekt und in derselben Region aus; siehe privates Netzwerk. Ein Service in einer anderen Region muss REDIS_URL verwenden. Damit er die private URL nutzen kann, erstellen Sie Redis in seiner Region mit lizard add redis --region <code>. <name> ist der Name, den das Add-on beim Vergeben der privaten Adresse hatte, redis für das erste; eine Umbenennung ändert ihn nicht.
Einen Service verbinden
lizard secrets set REDIS_URL='${{redis.REDIS_PRIVATE_URL}}' --service api
lizard redeploy --service apiDer Verweis wird beim Bereitstellen aufgelöst; Services erhalten die aktuellen Werte des Addons beim nächsten Deploy. Verwenden Sie REDIS_URL für Clients außerhalb des Projekts oder in einer anderen Region. Jeder Service im Projekt erhält außerdem die öffentliche REDIS_URL des Addons mit der niedrigsten Priorität; ein expliziter Verweis überschreibt sie.
Behält Managed Redis Daten?
Managed Redis speichert nicht jeden Schreibvorgang dauerhaft. Managed Redis hat keine Eviction-Richtlinie und keine Append-only-Datei. Wenn der Arbeitsspeicher ausgeht, startet die Instanz neu, und kürzlich geschriebene Daten können verloren gehen. Verwenden Sie sie für Daten, die sich neu aufbauen lassen, und speichern Sie Daten, die Sie nicht verlieren dürfen, in Managed Postgres.
Häufige Anwendungsfälle
- Cache — speichert berechnete Ergebnisse anhand der Anfrage.
- Warteschlange / Worker: Kombinieren Sie Redis mit einem Service im Worker-Modus, der Jobs verarbeitet. Einen Queue-Consumer ausführen zeigt das Beispiel redis-worker Schritt für Schritt.
- Rate Limiting / Sitzungen — schneller gemeinsam genutzter Status über Replikate hinweg.
# A worker that drains a Redis queue
lizard add -r your-org/worker -n jobs --no-deploy
lizard service set jobs --set containerPort=0
lizard secrets set REDIS_URL='${{redis.REDIS_PRIVATE_URL}}' --service jobs
lizard redeploy --service jobsSchlüssel durchsuchen
Öffnen Sie den Redis-Browser im Dashboard (lizard open), um Schlüssel und Werte zu prüfen. Für lokalen Zugriff mit den Verbindungswerten des Addons:
lizard run --service redis -- sh -c 'exec redis-cli -u "$REDIS_URL"'Speicher erweitern
lizard scale --service redis --storage 4096Der Speicher lässt sich nur vergrößern. Erlaubte Größen sind 512, 1024, 2048, 4096, 8192 oder 16384 MB. Beim Vergrößern stoppt Lizard Redis, kopiert die Daten auf ein größeres Volume und startet Redis wieder. Rechnen Sie also mit einer kurzen Ausfallzeit. Setzen Sie eine pausierte Instanz vorher mit lizard resume fort.
Siehe auch
- Managed Addons — Benennung, Verweise und die Browser im Dashboard.
- Background Workers — Redis mit einem Worker kombinieren, der eine Warteschlange verarbeitet.
lizard run --service redis startet den Befehl auf Ihrem Rechner mit den öffentlichen Verbindungswerten des Addons. Installieren Sie redis-cli lokal.
Aktualisiert