c# redis 如何设置过期时间_Redis Hash存储token、及设置过期时间
相信大家在很多業(yè)務(wù)場景都會遇到對數(shù)據(jù)設(shè)置過期時間,如安全認(rèn)證token、短信驗證碼等。一般我們的解決有幾種:存redis、存數(shù)據(jù)庫、實(shí)時計算(如JWT),不管使用哪種方式,需求就是過期了對數(shù)據(jù)的清理。下面我們說說如何對token設(shè)置過期處理。
首先我選擇的是Redis,效率高能滿足我所有的業(yè)務(wù)需求,但在redis中的 hash是不支持設(shè)置過期時間的,如果我們要設(shè)置過期時間,還要分類存儲,可以用下面折中的方法。所謂的分類存儲,就是對key命名格式。命名格式以冒號隔開,如:key=group:key。
添加數(shù)據(jù)、設(shè)置過期時間、查看分類
127.0.0.1:6379> set USER_TOKEN:token1? "11111111111111111111"
127.0.0.1:6379> set USER_TOKEN:token2? "22222222222222222222"
127.0.0.1:6379> EXPIRE? USER_TOKEN:token1? 60
127.0.0.1:6379> EXPIRE? USER_TOKEN:token2? 60
127.0.0.1:6379> keys USER_TOKEN*
1) "USER_TOKEN:token2"
2) "USER_TOKEN:token1"
查看結(jié)果
使用java實(shí)現(xiàn)
public class RedisUtil {
@Resource
private RedisTemplate redisTemplate;
@Resource(name = "redisTemplate")
private ValueOperations valOps;
@Resource(name = "redisTemplate")
private HashOperations hashOperations;
@Resource(name = "redisTemplate")
private ListOperations listOperations;
@Resource(name = "redisTemplate")
private SetOperations setOperations;
總結(jié)
以上是生活随笔為你收集整理的c# redis 如何设置过期时间_Redis Hash存储token、及设置过期时间的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我哭不出来是哪首歌啊?
- 下一篇: python程序员的工作内容_每个Pyt