《Redis使用手册》(试读版)它除了会把指定的内容缓存起来之外, 还会使⽤ EXPIRE 命令为缓存设置⽣存时间, 从⽽使得缓存可以在指定时间到达之后⾃动被移除。 代码清单 12-1 带有⾃动移除特性的缓存程序:/expire/unsafe_volatile_cache.py class VolatileCache: def __init__(self, client): self.client = return self.client.get(key) 以下代码简单地展示了这个缓存程序的使⽤⽅法: >>> from redis import Redis >>> from unsafe_volatile_cache import VolatileCache >>> client = Redis(decode_responses=True) >>> cache = VolatileCache(client) PX 选项的 SET 命令时, 键的值和⽣存时间都会同时被设置好, 因此程序就不会出现只设置了值但是却没有设置 ⽣存时间的情况。 基于上述原因, 我们把前⾯展示的缓存程序实现称之为“不安全”(unsafe)实现。 为了修复这个问题, 我们可 以使⽤带有 EX 选项的 SET 命令来重写缓存程序, 重写之后的程序正如代码清单 12-2 所示。 代码清单 12-2 重写之后的缓存程序:/expire/volatile_cache0 码力 | 352 页 | 6.57 MB | 1 年前3
共 1 条
- 1













