【Redis】Set常見應用場景


  • 微信抽獎小程序
1》點擊參與抽獎加入集合

SADD  key  {userID}

2》查看參與抽獎所有用戶

SMEMBERS key

3》抽取count名中獎者

SRANGEMEMBER key [count]  #不會從原集合中刪除元素,適合一次性抽取所有中獎用戶

STOP key [count] #會從原集合中刪除元素,適合分批抽取中獎用戶

 

  • 微信微博點贊,收藏,標簽
1》點在

SADD like:{消息ID} {用戶ID}

2》取消點贊

SREM like:{消息ID} {用戶ID}

3》檢查用戶是否點過贊

SISMEMBER like:{消息ID} {用戶ID}

4》獲取點贊的用戶列表

SMEMVERS like:{消息ID}

5》獲取點贊用戶數

SCARD like:{消息ID}

 

 

  • 集合操作

 

 

SINTER set1 set2 set3 -> {c}

SUNION set1 set2 set3 -> {a,b,c,d,e}

SDIFF set1 set2 set3 -> {a}

 

  • 集合操作實現微博微信關注模型
1》菠蘿(我)關注的人:

boluoSet -> {caomei,pingguo,xiangjiao}

2》草莓 關注的人: 

caomeiSet -> {boluo,pingguo,xiangjiao,yingtao}

3》蘋果 關注的人:

pingguoSet -> {boluo,caomei,yingtao,xiangjiao,fanqie}

4》我和草莓 的共同關注:

SINTER boluoSet caomeiSet --> {pingguo,xiangjiao}

5》我關注的人也關注 草莓:

SISMEMBER caomeiSet caomei

SISMEMBER lubanSet caomei

6》我可能認識的人:

SDIFF caomeiSet boluoSet ->(boluo,yingtao)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM