Redis ist ein speicherbasierter Schlüssel-Wert-Datenspeicher, der in verschiedenen Umgebungen eingesetzt wird, in denen eine schnelle Datenverarbeitung erforderlich ist. Es wird hauptsächlich für Caching, Aufgabenwarteschlangen und Sitzungsverwaltung verwendet und kann mit zusätzlichen Datensicherungsfunktionen auch als permanenter Datenspeicher genutzt werden. In diesem ersten Beitrag werden wir die Grundkonzepte von Redis und die Hauptkonfigurationsdatei redis.conf
kennenlernen.
1. Grundkonzept und Merkmale von Redis
Redis ist eine NoSQL-Datenbank, die Daten im Speicher (RAM) speichert und somit hohe Geschwindigkeiten bietet. Aufgrund dieser Eigenschaften wird es weit verbreitet für folgende Zwecke verwendet:
- Cache: Um die Datenantwortgeschwindigkeit von Webanwendungen zu erhöhen, werden häufig angeforderte Daten in Redis gespeichert, um sie schnell abzurufen.
- Sitzungsspeicher: Speicherung von Benutzer-Sitzungsinformationen für schnellen Zugriff und Verwaltung der Sitzungsdaten.
- Aufgabenwarteschlange: Eine asynchrone Aufgabenwarteschlange, die mit Bibliotheken wie Celery arbeitet, um Aufgaben zu planen und schnell zu verarbeiten.

Hauptvorteile von Redis
- Geschwindigkeit: Da die Daten im Speicher gespeichert werden, können sie schnell gelesen und geschrieben werden, was die Antwortverzögerung minimiert.
- Support für verschiedene Datenstrukturen: Neben einfachen Schlüssel-Wert-Speichern unterstützt es auch Listen, Mengen, Hashmaps und andere Strukturen.
- Erweiterbarkeit: Durch die Clusterkonfiguration kann der Datenspeicher und die Verarbeitungsleistung erweitert werden.
Flüchtigkeit von Redis und Datenbewahrungsoptionen
Standardmäßig ist Redis so konzipiert, dass es flüchtige Daten verarbeitet. Das bedeutet, dass Daten, die im Speicher gespeichert sind, beim Neustart des Servers verloren gehen können. Um dies zu beheben, bietet Redis zwei Datenbewahrungsoptionen an.
- RDB (Redis Database) Snapshot: Daten im Speicher werden zu bestimmten Zeitpunkten als Snapshot auf die Festplatte geschrieben.
- AOF (Append-Only File): Alle Schreiboperationen werden auf die Festplatte protokolliert, sodass die Daten beim Neustart des Servers wiederhergestellt werden können.
Wenn Redis nur als Cache verwendet wird, muss man sich nicht allzu sehr um die Flüchtigkeit der Daten kümmern, aber für dauerhafte Datenspeicherung können diese Optionen genutzt werden.
2. Redis-Konfigurationsdatei (redis.conf
)
Die Hauptkonfigurationsdatei von Redis, redis.conf
, ermöglicht es, die Funktionsweise des Redis-Servers im Detail zu konfigurieren. In der Regel befindet sie sich im Verzeichnis /etc/redis/redis.conf
und wird bei der Installation von Redis automatisch erstellt.
Wichtige Konfigurationseinstellungen in der redis.conf-Datei

1) Netzwerkeinstellungen
- port: Legt den vom Redis-Server verwendeten Port fest. Der Standardport ist 6379.
port 6379
- bind: Gibt die IP-Adressen an, die der Redis-Server akzeptiert. Der Standardwert ist
127.0.0.1
, was nur lokale Verbindungen erlaubt.
bind 127.0.0.1
2) Sicherheitseinstellungen
- requirepass: Setzt ein Passwort für den Zugriff auf den Redis-Server. Wenn es weggelassen wird, ist der Zugriff ohne Passwort möglich.
requirepass yourpassword
- protected-mode: Ein Modus, der Redis vor externem Zugriff schützt. Der Standardwert ist
yes
, was nur lokale Verbindungen erlaubt.
3) Speichermanagement
- maxmemory: Setzt die maximale Speicherkapazität, die Redis verwenden darf. Wenn keine Begrenzung festgelegt ist, wird der verfügbare Systemspeicher verwendet.
maxmemory 256mb
- maxmemory-policy: Eine Richtlinie, die bestimmt, welche Daten gelöscht werden, wenn der Speicher voll ist.
allkeys-lru
entfernt die am längsten nicht verwendeten Daten.
maxmemory-policy allkeys-lru
4) Einstellungen zur Datenspeicherung
- save: Erstellt regelmäßig RDB-Snapshots und speichert diese auf der Festplatte. Zum Beispiel erstellt die folgende Einstellung alle 60 Sekunden einen Snapshot, wenn mehr als 1000 Schlüssel geändert wurden.
save 60 1000
- appendonly: Aktiviert den AOF-Modus, um die Datenspeicherung zu verbessern. Wenn auf
yes
eingestellt, werden alle Schreiboperationen in die AOF-Datei geschrieben.
appendonly yes
5) Protokollierungs- und Debugging-Einstellungen
- loglevel: Legt das Protokollniveau fest.
notice
protokolliert nur allgemeine Nachrichten, währenddebug
alle Debug-Informationen aufzeichnet.
loglevel notice
- logfile: Gibt den Pfad zur Protokolldatei an. Der Standardwert ist
stdout
, was bedeutet, dass nichts in eine separate Datei protokolliert wird.
logfile /var/log/redis/redis.log
3. So wenden Sie Änderungen an der Redis-Konfiguration an
Nachdem Sie die gewünschten Optionen in der Konfigurationsdatei geändert haben, können Sie den Redis-Server neu starten, um die Änderungen anzuwenden.
sudo systemctl restart redis-server
Nach der Änderung der Einstellungen können Sie den folgenden Befehl verwenden, um zu überprüfen, ob Redis ordnungsgemäß funktioniert.
redis-cli ping
Wenn PONG
zurückgegeben wird, bedeutet dies, dass der Redis-Server ordnungsgemäß funktioniert.
Fazit
Wir haben die Grundkonzepte von Redis sowie die wichtigsten Punkte der Konfigurationsdatei kennengelernt. Da Redis über Konfigurationen in Bezug auf Leistung und Speicherdauer optimiert werden kann, ist es wichtig, die Einstellungen entsprechend dem Einsatzzweck zu optimieren. Im nächsten Teil werden wir detailliert auf die Datenspeicheroptionen von Redis, RDB und AOF, eingehen.
Add a New Comment