1、一定要设置最大缓存大小并设置缓存策略
如果不设置最大缓存,在新添加数据时,如果超过最大内存回事redis崩溃!
设置方式:maxmemory 1GB
使用redis-cli登录后,使用info命令查看内存情况:
# Memory
used_memory:882920
used_memory_human:862.23K 数据占用了多少内存
used_memory_rss:2412544
used_memory_rss_human:2.30M
used_memory_peak:898688
used_memory_peak_human:877.62K
total_system_memory:4044341248
total_system_memory_human:3.77G
used_memory_lua:37888
used_memory_lua_human:37.00K
maxmemory:0
maxmemory_human:1.00G 占用内存的峰值
maxmemory_policy:noeviction
mem_fragmentation_ratio:2.73
mem_allocator:libc
2、缓存策略
当maxmemory限制到达的时候,Redis将采取的准确行为是由maxmemory-policy配置指令配置的。
- noeviction - 当到达内存限制时返回错误
- allkeys-lru - 回收最近最少使用(LRU)的键,为新数据腾出空间。
- volatile-lru - 回收最近最少使用(LRU)的键,但是只回收有设置过期的键,为新数据腾出空间。
- allkeys-random - 回收随机的键,为新数据腾出空间。
- volatile-random - 回收随机的键,但是只回收有设置过期的键,为新数据腾出空间。
- volatile-ttl - 回收有设置过期的键,尝试先回收离TTL最短时间的键,为新数据腾出空间。
时间: 2024-12-14 05:23:20