數(shù)據(jù)庫(kù):Redis相關(guān)知識(shí)梳理
作者: 郝光明
Redis是一個(gè)開(kāi)源的使用ANSI C語(yǔ)言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語(yǔ)言的API。
1、數(shù)據(jù)類型
- string(字符串):最基本的k-v存儲(chǔ) ,適合驗(yàn)證碼、配置信息等
- list(列表):適合有序/固定的列表。比如行政區(qū)、字典表、消息隊(duì)列等。
- set(集合):支持交集、并集、差集等操作。可以用來(lái)找共同點(diǎn)等。
- hash(哈希):類似于唯一標(biāo)識(shí),value對(duì)應(yīng)詳情。適合存儲(chǔ)文章內(nèi)容、商品內(nèi)容等詳情。
- zset(有序集合):增強(qiáng)版本增加了一個(gè)score參數(shù),用來(lái)排序,適合排行榜類的數(shù)據(jù)存儲(chǔ)
2、優(yōu)點(diǎn)
- 速度快。數(shù)據(jù)存儲(chǔ)在內(nèi)存中,查找和操作的時(shí)間復(fù)雜度都是O(1)。類似于HashMap
- 多種數(shù)據(jù)類型,應(yīng)用場(chǎng)景豐富
- 支持事務(wù)特性、所有操作都是原子性
- 支持?jǐn)?shù)據(jù)的持久化,可以將數(shù)據(jù)保存在磁盤中
- 支持主-從模式的數(shù)據(jù)庫(kù)備份
- 性能高。讀取速度可達(dá)到110000次/s;寫81000次/秒
- 支持publish/subcribe、通知、key過(guò)期特性
3、場(chǎng)景舉例
3.1 緩存熱點(diǎn)數(shù)據(jù) 字典表 行政區(qū) 用戶登錄信息 配置信息
3.2 計(jì)數(shù)器 點(diǎn)贊數(shù) 瀏覽數(shù)
3.3 消息隊(duì)列 建議采用專門的消息中間件會(huì)更可靠。
3.4 最新列表 最新文章列表上架新品列表
3.5 排行榜 文章排名 商品排名
3.6 分布式鎖、單線程機(jī)制 電商秒殺 全局增量ID
3.7時(shí)效信息存儲(chǔ) 驗(yàn)證碼5分鐘失效

責(zé)任編輯:姜華
來(lái)源:
IT技術(shù)分享社區(qū)