Redis是一個(gè)免費的(de)開源BSD兼容數據庫。它是一個(gè)高(gāo)性能的(de)NoSQL緩存鍵值數據庫。Redis支持數據持久化(huà),可(kě)以将數據保存在Word卡中,并且可(kě)以在重新啓動後重新加載和(hé)使用(yòng)。Redis支持簡單的(de)鍵-值類型數據,同時(shí)還(hái)提供了(le)列表集zset散列等數據結構的(de)存儲,還(hái)支持數據備份,即主從複制。
Redis的(de)經典應用(yòng)場(chǎng)景:
1、緩存熱(rè)點數據:熱(rè)點數據(經常查詢,但不修改或删除數據)首選redis緩存,性能優異。
2、計數器:由于單線程的(de)原因,對(duì)點擊、訪問、喜歡、評論、視圖等應用(yòng)程序進行計數,避免并發問題,保證數據的(de)正确性,100%MS性能,并啓用(yòng)redis持久化(huà),方便數據持久化(huà)。
3、單線程機制:驗證前一段的(de)重複請求,并自由擴展類似情況。可(kě)以通(tōng)過red is過濾,比如每個(gè)請求請求IP,參數,接口等哈希作爲密鑰存儲red is,設置多(duō)長(cháng)有效期,然後下(xià)一個(gè)請求檢索是否有此Key,然後驗證是否在一定時(shí)間内重複提交,比如限制用(yòng)戶登錄次數,不超過一天的(de)錯誤登錄..Seckill系統基于redis的(de)單線程特性,防止數據庫超售、全局增量ID生成等,
4、排名:誰排名高(gāo),如高(gāo)點擊率、高(gāo)活動率、最高(gāo)銷售數量、前十名在投票(piào)前十名等等。
5、分(fēn)布式鎖:使用(yòng)redis可(kě)以實現分(fēn)布式鎖。爲了(le)保證分(fēn)布式鎖的(de)可(kě)用(yòng)性,鎖的(de)實現至少滿足以下(xià)條件:在任何時(shí)候互斥,隻有一個(gè)客戶端可(kě)以持有鎖。死鎖不會發生,即使客戶端在持有鎖期間沒有主動解鎖而崩潰,也(yě)可(kě)以保證下(xià)列其他(tā)客戶端被鎖定,本地容錯隻能在大(dà)多(duō)數Redis節點中正常運行,客戶端可(kě)以被鎖定和(hé)解鎖。鎖定和(hé)解鎖必須是同一客戶端,客戶端無法解鎖其他(tā)客戶端添加的(de)鎖定。
6、Cache:使用(yòng)Redis的(de)會話(huà)緩存是一種非常常見的(de)場(chǎng)景,與其他(tā)存儲相比,使用(yòng)Redis緩存會話(huà)的(de)優點是Redis提供了(le)持久性,許多(duō)場(chǎng)景現在使用(yòng)Redis作爲會話(huà)的(de)存儲解決方案。
重慶安菲科技軟件開發公司是一家爲企業做(zuò)軟件定制開發服務及行業解決方案的(de)供應商。軟件開發領域:教育/醫療/金融/零售/咨詢服務/傳媒/能源/汽車/房(fáng)地産/物(wù)流等,爲客戶提供軟件定制開發_APP開發_小程序開發,助力企業及品牌迅速布局互聯網,搶占市場(chǎng)先機!