redis - 是否可以定义仅适用于部分键的 LRU Redis
问题描述
我目前使用相同的 redis 实例来保存 2 种类型的信息:
- 它包含当我想释放内存时可以被驱逐的缓存数据(对于这个数据我想使用 LRU ,因为它可以增长到非常多的记录)。
- 无法随机删除的信息 - 应通过应用程序中的显式删除命令进行清理。
我的问题是,是否有一种方法可以仅在类型 1 的数据上定义 LRU 而不是在类型 2 的数据上定义这两种数据。
解决方案
对于第一种类型的数据,您可以为每个键(使用EXPIRE
,EXPIREAT
,或SET
命令)设置超时即TTL,对于第二种类型的数据,设置不超时。然后你可以配置你的 Redis 服务器设置maxmemory-policy
为volatile-lru。
使用此设置,只有第一种类型的数据将被 LRU 算法驱逐。
推荐阅读
- keras - 训练后如何计算 BiGAN 鉴别器损失
- flutter - Flutter 无法更新动态 TextEditingController 文本
- python - ValueError:Series.replace 不能使用 dict-value 和 non-None to_replace
- laravel - Laravel:更新数据时在 null 上调用成员函数 getClientOriginalName()
- javascript - 在 Next.js 中连接到 Google 电子表格时出错
- css - 如何修改 CSS 文本动画
- linux - 如何查看我在 linux 共享虚拟主机中可用和使用的配额大小?如果我无权访问“配额”命令
- python - 我的 python Minecraft 副本有问题
- mysql - 如何使用 where 条件计算值,我们可以根据其他表日期放置开始日期和结束日期
- python - 如何让docker容器连续运行?