Background

Redis

Was ist Redis?

Redis ist ein In-Memory-Datenspeicher, der Daten im Arbeitsspeicher hält und dadurch sehr schnelle Lese- und Schreibzugriffe ermöglicht. Neben einfachen Schlüssel-Wert-Paaren unterstützt Redis Datenstrukturen wie Listen, Sets, sortierte Sets, Hashes und Streams. Daten können optional auf die Festplatte geschrieben werden. Nach Lizenzänderungen bei Redis ist mit Valkey ein von der Linux Foundation getragener Open-Source-Fork entstanden.

Vorteile von Redis

  • Sehr geringe Latenz: Zugriffe aus dem Arbeitsspeicher sind deutlich schneller als bei festplattenbasierten Datenbanken.
  • Vielseitige Datenstrukturen: Zähler, Ranglisten, Warteschlangen und Sessions lassen sich direkt abbilden.
  • Pub/Sub und Streams: Redis eignet sich für einfache Nachrichtenverteilung zwischen Diensten.
  • Ablaufzeiten: Einträge können automatisch nach einer festgelegten Zeit gelöscht werden, was für Caches ideal ist.
  • Breite Unterstützung: Für nahezu jede Programmiersprache gibt es ausgereifte Client-Bibliotheken.

Nachteile von Redis

  • Begrenzt durch Arbeitsspeicher: Große Datenmengen werden teuer, da RAM mehr kostet als Festplattenspeicher.
  • Kein Ersatz für eine relationale Datenbank: Komplexe Abfragen und Relationen werden nicht unterstützt.
  • Persistenz mit Einschränkungen: Je nach Konfiguration können bei einem Absturz die letzten Schreibvorgänge verloren gehen.
  • Lizenzfrage: Die Lizenzänderungen erfordern eine bewusste Wahl zwischen Redis und Forks wie Valkey.

Einsatzbereich von Redis

Redis wird als Cache, Session-Speicher, für Rate Limiting, Job-Queues (etwa mit BullMQ), Echtzeit-Ranglisten und Pub/Sub-Nachrichten eingesetzt. Meist ergänzt es eine primäre Datenbank wie PostgreSQL.

Alternativen zu Redis

  • Valkey
  • Memcached
  • Dragonfly
  • KeyDB
Mariusz, der Gründer von Handmade Systems
NATO
TaxiKomm24
Swiss Life
SweepBusiness

Welches Paket passt zu Ihnen?

In einem 30-Minuten-Gespräch finden wir es heraus. Passt keins, sagen wir Ihnen das auch: