Redis过期后值仍然存在吗(redis过期后还有值吗)
Redis过期后值仍然存在吗?
Redis是一个开源、基于内存的分布式键值存储系统,它可用来储存高效率查找与存储数据。要想知道Redis中存储键(key)数据项(item)是否过期了,不仅要考虑键(key)的添加与删除情况,还要了解其设置的生存期,即从添加这项数据项(item)开始计时的过期时间 。
Redis支持设置数据项(item)的生存期。用户可以利用命令“ SET key [1,n]”设置一个字段(field)的生存期,其中1表示该项存活的秒数,n则为其命令后继参数。也就是说,如果一个键(key)在设定的N秒后没有被获取,则该键(key)就会被自动删除。但是在删除之前,其值也会被Redis存储下来,这样就有可能存在数据项(item)在过期后值仍然存在的情况。
举个例子,假设一个键(key)的初始值为value1,设置生存期为2秒:
SET key 2 value1
现在,在第二秒后所有键(key)都会被自动销毁,但是值value1仍然存在,因为Redis会在销毁之前把数据存储到磁盘中,以便这个键(key)能够重新被获取。
Redis中的值是能够在过期后依然存在的,但是我们无法获得这些值,因此他们不可能会被访问到。基本上,Redis是一种短暂性的,高效的存储系统,它的值是“过期即删除”的。
相关文章