溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis適用于哪些場景

發(fā)布時間:2020-11-20 11:46:15 來源:億速云 閱讀:199 作者:小新 欄目:關系型數(shù)據(jù)庫

小編給大家分享一下redis適用于哪些場景,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

redis適合什么場景?

1、緩存

緩存現(xiàn)在幾乎是所有中大型網(wǎng)站都在用的必殺技,合理的利用緩存不僅能夠提升網(wǎng)站訪問速度,還能大大降低數(shù)據(jù)庫的壓力。Redis提供了鍵過期功能,也提供了靈活的鍵淘汰策略,所以,現(xiàn)在Redis用在緩存的場合非常多。(推薦:《Redis視頻教程》)

2、排行榜

很多網(wǎng)站都有排行榜應用的,如京東的月度銷量榜單、商品按時間的上新排行榜等。Redis提供的有序集合數(shù)據(jù)類構能實現(xiàn)各種復雜的排行榜應用。

3、計數(shù)器

什么是計數(shù)器,如電商網(wǎng)站商品的瀏覽量、視頻網(wǎng)站視頻的播放數(shù)等。為了保證數(shù)據(jù)實時效,每次瀏覽都得給+1,并發(fā)量高時如果每次都請求數(shù)據(jù)庫操作無疑是種挑戰(zhàn)和壓力。Redis提供的incr命令來實現(xiàn)計數(shù)器功能,內(nèi)存操作,性能非常好,非常適用于這些計數(shù)場景。

4、分布式會話

集群模式下,在應用不多的情況下一般使用容器自帶的session復制功能就能滿足,當應用增多相對復雜的系統(tǒng)中,一般都會搭建以Redis等內(nèi)存數(shù)據(jù)庫為中心的session服務,session不再由容器管理,而是由session服務及內(nèi)存數(shù)據(jù)庫管理。

5、分布式鎖

在很多互聯(lián)網(wǎng)公司中都使用了分布式技術,分布式技術帶來的技術挑戰(zhàn)是對同一個資源的并發(fā)訪問,如全局ID、減庫存、秒殺等場景,并發(fā)量不大的場景可以使用數(shù)據(jù)庫的悲觀鎖、樂觀鎖來實現(xiàn),但在并發(fā)量高的場合中,利用數(shù)據(jù)庫鎖來控制資源的并發(fā)訪問是不太理想的,大大影響了數(shù)據(jù)庫的性能??梢岳肦edis的setnx功能來編寫分布式的鎖,如果設置返回1說明獲取鎖成功,否則獲取鎖失敗,實際應用中要考慮的細節(jié)要更多。

6、 社交網(wǎng)絡

點贊、踩、關注/被關注、共同好友等是社交網(wǎng)站的基本功能,社交網(wǎng)站的訪問量通常來說比較大,而且傳統(tǒng)的關系數(shù)據(jù)庫類型不適合存儲這種類型的數(shù)據(jù),Redis提供的哈希、集合等數(shù)據(jù)結構能很方便的的實現(xiàn)這些功能。

7、最新列表

Redis列表結構,LPUSH可以在列表頭部插入一個內(nèi)容ID作為關鍵字,LTRIM可用來限制列表的數(shù)量,這樣列表永遠為N個ID,無需查詢最新的列表,直接根據(jù)ID去到對應的內(nèi)容頁即可。

8、消息系統(tǒng)

消息隊列是大型網(wǎng)站必用中間件,如ActiveMQ、RabbitMQ、Kafka等流行的消息隊列中間件,主要用于業(yè)務解耦、流量削峰及異步處理實時性低的業(yè)務。Redis提供了發(fā)布/訂閱及阻塞隊列功能,能實現(xiàn)一個簡單的消息隊列系統(tǒng)。另外,這個不能和專業(yè)的消息中間件相比。

以上是redis適用于哪些場景的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI