Redis可以應用在什麼地方?這篇文章就來給大家一口氣分享 Redis 16 個常見使用場景,希望對大家有幫助!
【相關推薦:Redis影片教學】
例如:分散式Session
<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency>3、分散式鎖定String 類型setnx方法,只有在不存在時才能加入成功,回傳true
public static boolean getLock(String key) { Long flag = jedis.setnx(key, "1"); if (flag == 1) { jedis.expire(key, 10); } return flag == 1; } public static void releaseLock(String key) { jedis.del(key); }4、全域IDint型,incrby,利用原子性incrby userid 1000分庫分錶的場景,一次拿一段#5、計數器int類型,incr方法例如:文章的讀取量、微博點讚數、允許一定的延遲,先寫入Redis再定時同步到資料庫6、限流int類型,incr方法以訪客的ip和其他資訊作為key,訪問一次增加一次計數,超過次數則傳回false 7.位元統計String類型的bitcount(1.6.6的bitmap資料結構介紹)字元是以8位元二進位儲存的
set k1 a setbit k1 6 1 setbit k1 7 0 get k1 /* 6 7 代表的a的二进制位的修改 a 对应的ASCII码是97,转换为二进制数据是01100001 b 对应的ASCII码是98,转换为二进制数据是01100010 因为bit非常节省空间(1 MB=8388608 bit),可以用来做大数据量的统计。 */例如:線上使用者統計,留任使用者統計
setbit onlineusers 01 setbit onlineusers 11 setbit onlineusers 20支援位元與、位元或等等操作
BITOPANDdestkeykey[key...] ,对一个或多个 key 求逻辑并,并将结果保存到 destkey 。 BITOPORdestkeykey[key...] ,对一个或多个 key 求逻辑或,并将结果保存到 destkey 。 BITOPXORdestkeykey[key...] ,对一个或多个 key 求逻辑异或,并将结果保存到 destkey 。 BITOPNOTdestkeykey ,对给定 key 求逻辑非,并将结果保存到 destkey 。計算7天都在線上的使用者
BITOP "AND" "7_days_both_online_users" "day_1_online_users" "day_2_online_users" ... "day_7_online_users"8、購物車String 或hash。所有String可以做的hash都可以做
spop myset12、按讚、簽到、打卡
點讚了這條微博:sadd like:t1001 u3001
取消點讚:srem like:t1001 u3001#是否按讚:sismember like:t1001 u3001#喜歡的所有用戶:smembers like:t1001點讚數:scard like:t1001是不是比資料庫簡單多了。
sadd tags:i5001 真彩清晰顯示器
// 获取差集 sdiff set1 set2 // 获取交集(intersection ) sinter set1 set2 // 获取并集 sunion set1 set2#########假如:iPhone11 上市了###
sadd brand:apple iPhone11 sadd brand:ios iPhone11 sad screensize:6.0-6.24 iPhone11 sad screentype:lcd iPhone 11###賽選商品,蘋果的、ios的、螢幕在6.0-6.24之間的,螢幕材質是LCD螢幕###
sinter brand:apple brand:ios screensize:6.0-6.24 screentype:lcd###15、使用者追蹤、推薦模型######follow 關注fans 粉絲######互相關注:########## sadd 1:follow 2######sadd 2:fans 1######sadd 1:fans 2######sadd 2:follow 1##########我關注的人也關注了他(取交集):#########sinter 1:follow 2:fans#########可能認識的人:###
id 为6001 的新闻点击数加1:
zincrby hotNews:20190926 1 n6001
获取今天点击最多的15条:
zrevrange hotNews:20190926 0 15 withscores
Redis 用的好,加薪少不了
原文地址:https://juejin.cn/post/6994229128534687781
作者:码猿技术专栏
更多编程相关知识,请访问:编程视频!!
以上是Redis可以應用在什麼地方? 16 個常見使用場景分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!