業(yè)務(wù)方可能需要對(duì)用戶進(jìn)行簽到序厉,由于存在并發(fā)的可能矫户,使用redis 對(duì)用戶id 進(jìn)行hash后分組离斩,再放入redis节吮。
對(duì)用戶id進(jìn)行hash抽高,以便對(duì)大量的用戶進(jìn)行均勻的分到不同的可以上面。
1.設(shè)置某個(gè)用戶的簽到次數(shù)
127.0.0.1:6379> hget qd user:1000
"2"
- 對(duì)某個(gè)用戶多次簽到的記錄
127.0.0.1:6379> hincrby qd user:1000 1
(integer) 2
3.查看當(dāng)前有哪些用戶簽到了
127.0.0.1:6379> hkeys qd
- "user:1000"
- "user:1"
如果redis中沒(méi)有對(duì)應(yīng)的用戶簽到信息透绩,則需要保存數(shù)據(jù)庫(kù)翘骂。
還有的業(yè)務(wù) 簽到后送積分,假如送積分是異步消息執(zhí)行的話帚豪,需要考慮消息冪等性和消息可達(dá)性碳竟,消息是否丟失。
如果采用rpc調(diào)用的話狸臣,考慮冪等性和重試機(jī)制莹桅。