删除LRU上的Redis Hash Key字段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除LRU上的Redis Hash Key字段相关的知识,希望对你有一定的参考价值。
如何在Redis上设置LRU,这不是在实例级别上,而是在某些特定级别上。让我们说哈希。我使用hash-key作为一个缓存桶,字段作为键,值是值。所以它就像:Redis;对我来说是key-field-value = type-key-field。
如果它不直接,那么我想使用另一个DB Level LRU。 (一个Redis实例有16个DB,我想使用DB 1作为LRU这意味着DB 1中的所有内容都将遵循LRU,而进入DB-2,3 ...将不会遵循LRU)。
我用Hash + Sorted Set实现了它。
在我的情况下相当于Redis规范是:
哈希键,字段,值=类型,键,值
排序集:键,分数,值=类型,lru_counter,键
(取得最低范围(如果你想删除5个元素,zrange(类型,0,4)),这将给你最近最少使用的5个键)
哈希将存储实际缓存。排序集将存储Just键(作为成员)和分数。每次put和get in redis散列(在任何键上)都将增加lru_counter(一个整数变量),并将条目放入带有相同键(type,lru_counter,key)和lru_counter得分的有序集合中。
因此,最近的put / get将在同一密钥的Sorted Set中具有最高分(lru_counter)值。
当涉及到删除时,我拿出得分最低的成员(zrange,这是Hash的关键)并从Sorted Set和Hash中删除。
以上是关于删除LRU上的Redis Hash Key字段的主要内容,如果未能解决你的问题,请参考以下文章