Auf dieser Seite werden Maxmemory-Richtlinien und andere für Memorystore for Redis verfügbare Redis-Konfigurationen beschrieben. Sie müssen Ihre Redis-Instanz nicht neu starten, wenn Sie eine Konfiguration anpassen.
Eine Anleitung zum Ändern der unten aufgeführten Konfigurationen finden Sie unter Redis-Instanzen konfigurieren.
Maxmemory-Richtlinien
Wenn der Redis-Instanzspeicher voll ist und ein neuer Schreibvorgang eingeht, werden die Schlüssel von Redis entfernt, um Platz für den Schreibvorgang zu schaffen. Dieser Vorgang basiert auf der Maximalspeicherrichtlinie Ihrer Instanz. Die standardmäßige Richtlinie für max. Speicher für Memorystore for Redis ist volatile-lru
. Sie können auch eine der folgenden Maximalspeicher-Richtlinien verwenden:
noeviction
: Gibt einen Fehler zurück, wenn die Redis-Instanz den Höchstspeicher erreicht. Daten werden nicht überschrieben oder entfernt.allkeys-lfu
: Verfügbar in Redis-Version 4.0 oder höher. Entfernt die am wenigsten verwendeten Schlüssel aus dem gesamten Keyset.allkeys-lru
: Entfernt die am weitesten in der Vergangenheit verwendeten (LRU) Schlüssel aus dem gesamten Keyset.volatile-lfu
: Verfügbar in Redis Version 4.0 oder höher. Löscht die am weitesten in der Vergangenheit verwendeten Schlüssel, die mit TTL-Ablauf (Lebensdauer) festgelegt sind.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 ändern, wenn Sie eine Memorystore for Redis-Instanz erstellen oder aktualisieren.
Parameter | Beschreibung | Zulässige Werte |
---|---|---|
activedefrag | Redis Version 4.0 oder höher Ermöglicht die Freigabe von Instanzspeicher, der durch das Standardverhalten der Speicherfragmentierung von OSS Redis verbunden ist. | no (Standardeinstellung)yes |
Datenbanken | Redis-Version 3.2 oder höher. Gibt die Anzahl der Datenbanken auf dem Redis-Server an. | 1-100 Standardwert ist 16 |
lazyfree-lazy-eviction | Redis Version 7.0 oder höher Aktiviert oder deaktiviert das Lazy Free for Eviction. no deaktiviert diese Konfiguration. Weitere Informationen finden Sie unter REDIS.CONF. |
no (Standardeinstellung)yes |
lazyfree-lazy-expire | Redis Version 7.0 oder höher Aktiviert oder deaktiviert die Funktion „Lazy Free for Expire“. no deaktiviert diese Konfiguration. Weitere Informationen finden Sie unter REDIS.CONF. |
no (Standardeinstellung)yes |
lazyfree-lazy-user-del | Redis Version 7.0 oder höher Aktiviert/deaktiviert die Lazy Free-Funktion für die DEL-Aktion des Nutzers. no deaktiviert diese Konfiguration. Weitere Informationen finden Sie unter REDIS.CONF. |
no (Standardeinstellung)yes |
lazyfree-lazy-user-flush | Redis Version 7.0 oder höher Aktiviert oder deaktiviert die Lazy Free-Funktion für die Nutzerspülung. no deaktiviert diese Konfiguration. Weitere Informationen finden Sie unter REDIS.CONF. |
no (Standardeinstellung)yes |
lfu-decay-time | Redis Version 4.0 oder höher Die Zeit in Minuten, bevor der LFU-Häufigkeitszähler für einen bestimmten Schlüssel durch zwei geteilt wird (oder, wenn der Zähler kleiner als 10 ist, um 1 verringert wird). Weitere Informationen finden Sie in der Datei Redis.Conf. | Positive Ganzzahlen des Datentyps "long" (Standard=1) |
lfu-log-factor | Redis Version 4.0 oder höher Bestimmt, wie der Frequenzzähler die wichtigsten Treffer darstellt. Bevor Sie die Standardkonfiguration ändern, lesen Sie, wie die Konfiguration lfu-log-factor in der Datei REDIS.CONF funktioniert. |
Positive Ganzzahlen des Datentyps "long" (Standard=10) |
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 wird, wird der Client mit der größten Speichernutzung entfernt. |
Der Standardwert ist 0% (kein Limit). Zulässige Werte sind Ganzzahl-Prozentwerte zwischen 0% und 100% . Der Prozentsatz des Maxmemory-Werts der Instanz, auf den der Clientspeicher begrenzt ist. |
maxmemory-gb | Gibt ein anpassbares Limit an, ab dem die Bereinigungsrichtlinie wirksam wird.
Wenn Sie beispielsweise eine Instanz mit 10 GB haben und maxmemory-gb auf 8 festlegen, wird die Richtlinie zur Entfernung wirksam, wenn Ihre Daten 8 GB Instanzspeicher belegen. So bleiben bis zu 2 GB Speicher als Overhead. Standardmäßig ist maxmemory-gb auf die Instanzkapazität eingestellt. Weitere Informationen zur optimalen Verwendung der maxmemory-gb -Konfiguration finden Sie in den Best Practices für die Speicherverwaltung in Memorystore.Diese Konfiguration wird in der Google Cloud Console als maxmemory-percent angezeigt. Wenn Sie die Konsole verwenden, legen Sie maxmemory-percent als Prozentsatz der Instanzkapazität anstelle einer bestimmten Anzahl von GB fest.
|
Anzahl der GB, ausgedrückt als ganze Zahl oder Dezimalzahl. Beispiele: 10 legt ein maxmemory-gb von 10 GB fest.1.5 legt ein maxmemory-gb von 1,5 GB fest.maxmemory-gb kann auf mindestens 20 % der Instanzkapazität reduziert werden.
|
maxmemory-policy | Gibt das Verhalten an, dem Redis folgt, wenn die Instanzdaten das Limit von maxmemory-gb erreichen. Eine Beschreibung des Verhaltens der einzelnen Richtlinien finden Sie unter Maxmemory-Richtlinien.Weitere Informationen zu den Open-Source-Redis-Maximalspeicherrichtlinien finden Sie auf der Seite zum Open-Source-Redis-Cache. |
noeviction allkeys-lru volatile-lru (Standardeinstellung) 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 auf der Redis-Website auf der Seite Redis-Keyspace-Benachrichtigungen. | "" (Standard) K Keyspace-Ereignisse mit dem Präfix __keyspace@ E Keyevent-Ereignisse mit dem Präfix __keyevent@ g Allgemeine Befehle (nicht typspezifisch) wie DEL, EXPir oder RENAME $ String-Befehle l List-Befehle auf s Legen Sie Befehle fest h Hash-Befehle z Sortierte Satzbefehle x Abgelaufene Ereignisse (Ereignisse, die jedes Mal generiert werden, wenn ein Schlüssel abläuft) e Bereinigte Ereignisse (Ereignisse, die generiert werden, wenn ein Schlüssel für den Höchstspeicher entfernt wird) A Alias für g$lshzxe, sodass der "AKE"-String alle Ereignisse bezeichnet. |
stream-node-max-bytes |
Redis Version 5.0 oder höher. Die Datenstruktur des Redis-Streams verwendet eine Radix-Struktur zum Speichern von Elementen. Der Parameter stream-node-max-bytes legt die maximale Anzahl von Byte fest, die zum Speichern von Elementen in einem einzelnen Baumknoten verfügbar sind. Sobald dieses Limit erreicht ist, werden neue Elemente in einem neuen Baumknoten gespeichert. |
Ganzzahlen 0 und höher. (Standard=4096) 0 bezeichnet einen Baumknoten mit unbegrenzter Größe. |
stream-node-max-entries |
Redis Version 5.0 oder höher. Die Datenstruktur des Redis-Streams verwendet eine Radix-Struktur zum Speichern von Elementen. Der Parameter stream-node-max-entries gibt die Anzahl der Elemente an, die in einem einzelnen Knoten gespeichert werden können. Wenn dieses Limit erreicht ist, werden neue Elemente in einem neuen Baumknoten gespeichert. |
Ganzzahlen 0 und höher. (Standard=100) 0 bezeichnet einen Baumknoten mit einer unbegrenzten Anzahl von Elementen. |
timeout |
Die Anzahl der Sekunden, nach der inaktive Clientverbindungen beendet werden. Wenn timeout jedoch auf 0 gesetzt ist, führen inaktive Clients keine Zeitüberschreitung durch und bleiben so lange verbunden, bis der Client die Beendigung ausgibt.
|
0 (Standard) Ganzzahlen >= 120 Einheit = Sekunden |
Unveränderliche Konfigurationsparameter
In der folgenden Tabelle sind die Redis-Konfigurationsparameter aufgeführt, die Sie in Memorystore for Redis und deren Standardwerten nicht ändern können. Ausführliche Informationen zu diesen Konfigurationsparametern finden Sie in der Redis-Konfiguration.
Parameter | Standardwert |
---|---|
lua-time-limit |
5.000 |
hash-max-ziplist-entries |
2.048 |
hash-max-ziplist-value |
1.024 |
list-max-ziplist-size |
-2 |
list-compress-depth . |
0 |
set-max-intset-entries |
512 |
zset-max-ziplist-entries |
1.024 |
zset-max-ziplist-value |
1.024 |
hll-sparse-max-byte |
3.000 |
activerehashing |
Ja |
hz |
10 |
databases |
16 |
maxclients |
65000 |
slowlog-log-slower-than |
10000 |
slowlog-max-len |
128 |
repl-diskless-load |
swapdb |
io-threads-do-reads |
Ja |
Nächste Schritte
- Weitere Informationen über Redis-Konfigurationen erhalten Sie auf der Open-Source-Seite Redis-Konfiguration.