Eine kurze Diskussion zum Umgang mit Cache-Ablauf und durch Cache belegtem Speicher in Redis? Der folgende Artikel führt Sie durch die Strategie zur Cache-Ablaufverarbeitung und den Mechanismus zur Speichereliminierung in Redis. Ich hoffe, er wird Ihnen hilfreich sein!
Der Cache für abgelaufene Schlüssel ist abgelaufen, aber der Speicher des Servers ist weiterhin belegt. Dies liegt an den beiden Löschstrategien, auf denen Redis basiert:
Überprüfen Sie abgelaufene Schlüssel regelmäßig und stichprobenartig und bereinigen und löschen Sie sie, wenn sie ablaufen. (Die Anzahl der Prüfungen pro Sekunde wird in redis.conf konfiguriert)
Wenn der Client einen abgelaufenen Schlüssel anfordert, prüft Redis, ob der Schlüssel abgelaufen ist , löschen Sie es und geben Sie dann Null zurück. Diese Strategie ist CPU-schonender und verursacht keinen allzu großen Verlust, allerdings ist die Speichernutzung relativ hoch.
Was soll ich also tun, wenn der Speicher vom Redis-Cache belegt und langsam ist?
: Wenn die Speichernutzungsrate erreicht ist, wird der Cache bereinigt
* noeviction:旧缓存永不过期,新缓存设置不了,返回错误 * allkeys-lru:清除最少用的旧缓存,然后保存新的缓存(推荐使用) * allkeys-random:在所有的缓存中随机删除(不推荐) * volatile-lru:在那些设置了expire过期时间的缓存中,清除最少用的旧缓存,然后保存新的缓存 * volatile-random:在那些设置了expire过期时间的缓存中,随机删除缓存 * volatile-ttl:在那些设置了expire过期时间的缓存中,删除即将过期的`
Weitere Programmierkenntnisse finden Sie unter: maxmemory
Programmierung Erste Schritte
Das obige ist der detaillierte Inhalt vonEine kurze Diskussion zum Umgang mit Cache-Ablauf und durch Cache belegtem Speicher in Redis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!