Unterstützte Instanzkonfigurationen

Auf dieser Seite werden die maxmemory-Richtlinien und andere Redis-Konfigurationen beschrieben, die für Memorystore for Redis Cluster verfügbar sind.

Eine Anleitung zum Ändern der auf dieser Seite aufgeführten Konfigurationen finden Sie unter Cluster konfigurieren.

Maxmemory-Richtlinien

Wenn der Arbeitsspeicher Ihrer Instanz voll ist und ein neuer Schreibvorgang eingeht, entfernt Redis Schlüssel, um Platz für den Schreibvorgang zu schaffen. Dies geschieht auf Grundlage der Maxmemory-Richtlinie Ihrer Instanz. Die Standardrichtlinie für „maxmemory“ für Memorystore for Redis Cluster ist volatile-lru. Sie können auch eine der folgenden Maximalspeicher-Richtlinien verwenden:

  • noeviction: Gibt einen Fehler zurück, wenn die Instanz „maxmemory“ erreicht. Daten werden nicht überschrieben oder entfernt.
  • allkeys-lfu: Entfernt die am seltensten verwendeten Schlüssel aus dem gesamten Schlüsselsatz.
  • allkeys-lru: Entfernt die am weitesten in der Vergangenheit verwendeten (LRU) Schlüssel aus dem gesamten Keyset.
  • volatile-lfu: Entfernt die am seltensten verwendeten Schlüssel, für die eine Gültigkeitsdauer (TTL) festgelegt ist.
  • volatile-lru: Entfernt die am weitesten in der Vergangenheit verwendeten (LRU)-Schlüssel, die mit TTL-Ablaufzeiten festgelegt sind.
  • allkeys-random: Entfernt zufällige Schlüssel aus dem gesamten Schlüsselbereich.
  • volatile-random: Entfernt zufällige Schlüssel aus den Schlüsseln mit TTL-Ablauf.
  • volatile-ttl: Entfernt die Schlüssel mit der kürzesten TTL aus den Schlüsseln mit TTL-Ablauf.

Editierbare Konfigurationsparameter

Sie können die folgenden Parameter beim Erstellen oder Aktualisieren einer Memorystore for Redis-Clusterinstanz ändern.

Parameter Beschreibung Zulässige Werte
maxmemory-clients Redis 7.0 oder höher. Mit dieser Konfiguration können Nutzer die maximale Arbeitsspeichernutzung von Clients steuern.

Gesamte Arbeitsspeichernutzung von normalen/Pub/Sub-Clients. Wenn das Limit erreicht ist, wird der Client mit der höchsten Speichernutzung entfernt.
Zulässige Werte sind ganzzahlige Prozentwerte zwischen 0% und 100%. Stellt den Prozentsatz des maximalen Arbeitsspeichers der Instanz dar, auf den der Clientspeicher beschränkt ist.

Der Standardwert hängt vom Knotentyp ab. Weitere Informationen finden Sie unter Knotenmerkmale.
maxmemory Gibt ein anpassbares Limit an, ab dem die Bereinigungsrichtlinie wirksam wird. Sie legen das maxmemory-Limit auf der Ebene des einzelnen Knotens fest, die Einstellung gilt jedoch für alle Knoten. Angenommen, Sie haben eine Instanz mit 3 Knoten, verwenden einen redis-highmem-xlarge-Knotentyp mit 58 GB und möchten maxmemory auf 90% der Gesamtkapazität Ihrer Instanz festlegen. Dazu legen Sie maxmemory auf 52, 2 GB fest, was 90% der Knotenkapazität entspricht. Dies gilt für alle Knoten, wodurch das Limit für den maximalen Arbeitsspeicher der Instanz auf 90 % festgelegt wird. Weitere Informationen zum standardmäßigen reservierten Overhead finden Sie unter Keyspace-Kapazität und reservierter Overhead. Maxmemory-Limit für Ihre Instanz.

Die folgenden Einheiten werden unterstützt:

b (Standard)
k
kb
m
mb
g
gb
maxmemory-policy Gibt das Verhalten von Redis an, wenn die Instanzdaten das Limit von maxmemory erreichen. Weitere Informationen zu den einzelnen Richtlinien finden Sie unter Maxmemory-Richtlinien.

Weitere Informationen zu den Open-Source-Redis-maxmemory-Richtlinien finden Sie auf der LRU-Cache-Seite von Open-Source-Redis.
noeviction
allkeys-lru
volatile-lru (Standard)
allkeys-random
volatile-random
volatile-ttl
volatile-lfu (Redis-Version 4.0 und höher)
allkeys-lfu (Redis-Version 4.0 und höher)
notify-keyspace-events Clients können Benachrichtigungen für bestimmte Keyspace-Ereignisse abonnieren. Weitere Informationen finden Sie unter Redis-Keyspace-Benachrichtigungen. ""
Kein Ereignis (Standard)
K
Keyspace-Ereignisse, veröffentlicht mit dem Präfix __keyspace@<db>__.
E
Keyevent-Ereignisse, veröffentlicht mit dem Präfix __keyevent@<db>__.
g
Generische Befehle (nicht typspezifisch) wie DEL, EXPIRE oder RENAME
$
String-Befehle
l
Listenbefehle
s
Set-Befehle
h
Hash-Befehle
z
Befehle für sortierte Sets
x
Abgelaufene Ereignisse (Ereignisse, die jedes Mal generiert werden, wenn ein Schlüssel abläuft)
e
Entfernte Ereignisse (Ereignisse, die generiert werden, wenn ein Schlüssel für maxmemory entfernt wird)
A
Alias für g$lshzxe, sodass der String „AKE“ alle Ereignisse bedeutet.
slowlog-log-slower-than Ermöglicht die Konfiguration des Slow-Logs. Gibt den Schwellenwert für die Ausführungszeit (in Mikrosekunden) an. Wenn ein Befehl diesen Schwellenwert überschreitet, wird er dem Slow Log hinzugefügt. Der Standardwert ist 10.000.

Ein Wert von null erzwingt das Logging jedes Befehls. Der Wert -1 deaktiviert das Slow Log. Alle anderen negativen Werte werden abgelehnt.
maxclients Ermöglicht die Konfiguration der maxclients-Konfiguration für Ihre Instanz. Informationen zum Limit für die maximale Anzahl von Clients und zum Standardwert für Ihre Instanz finden Sie unter Maximale Anzahl von Clients. Der Standardwert hängt vom Knotentyp ab. Weitere Informationen finden Sie unter Knotenmerkmale.

Unveränderliche Konfigurationsparameter

Memorystore for Redis Cluster legt den Wert des Konfigurationsparameters proto-bulk-max-len auf 256 MB fest. Dieser Wert kann nicht geändert werden.