這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)redis的用處有哪些,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
Redis簡(jiǎn)介
Redis是一個(gè)高性能的key-value數(shù)據(jù)庫(kù)。
Redis 與其他 key - value 緩存產(chǎn)品有以下三個(gè)特點(diǎn):
- Redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤中,重啟的時(shí)候可以再次加載進(jìn)行使用。
- Redis不僅僅支持簡(jiǎn)單的key-value類型的數(shù)據(jù),同時(shí)還提供list,set,zset,hash等數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)。
- Redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份。
redis 有哪些用處?
五種用途
1.全頁(yè)面緩存
整頁(yè)緩存。如果你正在使用服務(wù)器端呈現(xiàn)的內(nèi)容,則不需要為每個(gè)單獨(dú)的請(qǐng)求重新渲染每個(gè)頁(yè)面。使用如Redis這樣的緩存,你可以緩存經(jīng)常請(qǐng)求的內(nèi)容,從而大大減少請(qǐng)求最多的頁(yè)面的延遲,并且大多數(shù)框架針對(duì)Redis緩存頁(yè)面都有hooks。
// 設(shè)置全頁(yè)面緩存1分鐘 SET key "<html>...</html>" EX 60 // 獲取全頁(yè)面 GET key
2.順序排列
由于Redis在內(nèi)存中Set數(shù)據(jù)結(jié)構(gòu)可以非??焖俸透咝нM(jìn)行遞增和遞減,性能遠(yuǎn)遠(yuǎn)高于SQL查詢。比較這與Redis的排序集相結(jié)合意味著你可以以毫秒為單位抓取列表中評(píng)分最高的項(xiàng)目,而且實(shí)現(xiàn)起來(lái)非常容易。
// 向排序集合中添加值 ZADD sortedSet 1 "one" // 從排序集合中獲取所有值 ZRANGE sortedSet 0 -1 // 從排序集合中獲取所有值與權(quán)重 ZRANGE sortedSet 0 -1 WITHSCORES
3.會(huì)話Session存儲(chǔ)
我所見的Redis最常見的用途是會(huì)話存儲(chǔ)。與其他會(huì)話存儲(chǔ)(如Memcache)不同,Redis可以保留數(shù)據(jù),以便在緩存停止的情況下,在重新啟動(dòng)時(shí),所有數(shù)據(jù)仍然存在。即便不是需要嚴(yán)格持續(xù)的任務(wù),此功能仍可以為你的用戶省去大量的麻煩。沒有人會(huì)樂于見到他們的會(huì)話被無(wú)緣無(wú)故隨機(jī)刪掉。
// 設(shè)置一分鐘過(guò)期的session SET randomHash "{userId}" EX 60 // 獲取用戶ID GET randomHash
4.隊(duì)列
使用Redis可以做的一個(gè)不太常見,但非常有用的事情是排隊(duì)。無(wú)論是電子郵件隊(duì)列還是其他應(yīng)用程序使用的數(shù)據(jù),你都可以在Redis中創(chuàng)建一個(gè)高效的隊(duì)列。任何熟悉堆棧以及會(huì)push和pop項(xiàng)目的開發(fā)人員都可以輕松自然地使用此功能。
// 添加消息 HSET messages <id> <message> ZADD due <due_timestamp> <id> // 接收消息 ZRANGEBYSCORE due -inf <current_timestamp> LIMIT 0 1 HGET messages <message_id> // 刪除消息 ZREM due <message_id> HDEL messages <message_id>
5.pub/sub
Redis在真實(shí)世界的最終用法即我將在這篇文章中提出的pub / sub。這是Redis內(nèi)置的最強(qiáng)大的功能之一;得到的可能是無(wú)限的。你可以創(chuàng)建一個(gè)實(shí)時(shí)聊天系統(tǒng),在社交網(wǎng)絡(luò)上觸發(fā)好友請(qǐng)求的通知等等。這個(gè)功能是Redis提供的最被低估的功能之一,但功能非常強(qiáng)大,而且使用簡(jiǎn)單。
// 向通道中推送消息 PUBLISH channel message // 從通道中獲取消息 SUBSCRIBE channel
結(jié)論
我希望你會(huì)喜歡這些Redis在真實(shí)世界的使用。雖然這篇文章只抓住了Redis能為你做的事情的表面,但是我希望你能從中獲得應(yīng)如何充分利用Redis的啟發(fā)。
上述就是小編為大家分享的redis的用處有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
本文標(biāo)題:redis的用處有哪些-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)地址:http://aaarwkj.com/article36/icdpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、App開發(fā)、企業(yè)建站、網(wǎng)站營(yíng)銷、網(wǎng)站設(shè)計(jì)公司、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容