Redis设置生效时间立即可见(写redis多久生效)
Redis是一种开源、内存性的高速键值数据库,它支持丰富的数据类型,可以快速地读写数据。Redis内部有一个同步机制,用于持久化,在执行数据设置之后,可以立即可见。
Redis设置数据的生效时间,使用EXPIRE命令即可设置key的有效期,也可以指定失效时间的精准时间戳。立即可见需要在程序中使用EXPIREAT或EXPIRE命令及时返回,否则就无法立即可见。
EXPIRE命令可以设置key的有效期,比如将key的有效期设置为5秒,即可立即可见:
127.0.0.1:6379> SET key "Hello"
OK127.0.0.1:6379> EXPIRE key 5
(integer) 1
EXPIREAT命令可以指定key的失效时间的精准时间戳,比如:
127.0.0.1:6379> SET key "Hello"
OK127.0.0.1:6379> EXPIREAT key 1493460030
(integer) 1
设置失效时间后,一旦达到指定的时刻,Redis就会立即将key从内存中删除,然后再从磁盘中加载数据,实现立即可见。
Redis自动失效功能也可以为设置数据提供有效期,这样可以有效减少磁盘IO。Redis会在数据设置后自动计算从有效期起至当前时刻的值,以及从当前时刻至有效期终止的值,从而实现自动失效功能。
Redis的设置生效时间功能丰富,可根据项目的需求选择合适的设置生效时间模式,同时,需要注意缓存的读写安全性及缓存击穿性。