新聞中心
Redis是一個強大的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲,包含數(shù)據(jù)庫,緩存和消息代理等多種用途。大多數(shù)人經(jīng)常認為它不過是一個簡單的鍵值存儲,但其實它有更多的能力。下面我將會總結(jié)一些Redis可以做的事情的真實例子。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比合山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式合山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋合山地區(qū)。費用合理售后完善,10年實體公司更值得信賴。
1、全頁面緩存
首先是整頁緩存。如果你正在使用服務(wù)器端呈現(xiàn)的內(nèi)容,則不需要為每個單獨的請求重新渲染每個頁面。使用如Redis這樣的緩存,你可以緩存經(jīng)常請求的內(nèi)容,從而大大減少請求最多的頁面的延遲,并且大多數(shù)框架針對Redis緩存頁面都有hooks。
簡單命令
- // Set the page that will last 1 minute
- SET key "..." EX 60
- // Get the page
- GET key
2、排行榜
Redis令人耀眼的地方之一就是排行榜。由于Redis在內(nèi)存中,因此可以非常快速和高效地處理遞增和遞減。將此與每個請求運行SQL查詢比較,性能收益巨大!這與Redis的排序集相結(jié)合意味著你可以以毫秒為單位抓取列表中評分***的項目,而且實現(xiàn)起來非常容易。
簡單命令
- // Add an item to the sorted set
- ZADD sortedSet 1 "one"
- // Get all items from the sorted set
- ZRANGE sortedSet 0 -1
- // Get all items from the sorted set with their score
- ZRANGE sortedSet 0 -1 WITHSCORES
3、會話Session存儲
我所見的Redis最常見的用途是會話存儲。與其他會話存儲(如Memcache)不同,Redis可以保留數(shù)據(jù),以便在緩存停止的情況下,在重新啟動時,所有數(shù)據(jù)仍然存在。即便不是需要嚴格持續(xù)的任務(wù),此功能仍可以為你的用戶省去大量的麻煩。沒有人會樂于見到他們的會話被無緣無故隨機刪掉。
簡單命令
- // Set session that will last 1 minute
- SET randomHash "{userId}" EX 60
- // Get userId
- GET randomHash
4、隊列
使用Redis可以做的一個不太常見,但非常有用的事情是排隊。無論是電子郵件隊列還是其他應(yīng)用程序使用的數(shù)據(jù),你都可以在Redis中創(chuàng)建一個高效的隊列。任何熟悉堆棧以及會push和pop項目的開發(fā)人員都可以輕松自然地使用此功能。
簡單命令
- // Add a Message
- HSET messages
- ZADD due
- // Recieving Message
- ZRANGEBYSCORE due -inf
LIMIT 0 1 - HGET messages
- // Delete Message
- ZREM due
- HDEL messages
5、pub/sub
Redis在真實世界的最終用法即我將在這篇文章中提出的pub / sub。這是Redis內(nèi)置的***大的功能之一;得到的可能是***的。你可以創(chuàng)建一個實時聊天系統(tǒng),在社交網(wǎng)絡(luò)上觸發(fā)好友請求的通知等等。這個功能是Redis提供的最被低估的功能之一,但功能非常強大,而且使用簡單。
簡單命令
- // Add a message to a channel
- PUBLISH channel message
- // Recieve messages from a channel
- SUBSCRIBE channel
結(jié)論
我希望你會喜歡這些Redis在真實世界的使用。雖然這篇文章只抓住了Redis能為你做的事情的表面,但是我希望你能從中獲得應(yīng)如何充分利用Redis的啟發(fā)。
網(wǎng)頁名稱:Redis在現(xiàn)實世界的5個用法
標題URL:http://m.fisionsoft.com.cn/article/ccsgdjj.html


咨詢
建站咨詢
