Redis(REmote DIctionary Server) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲(chǔ)系統(tǒng)。
Redis是一個(gè)開源的使用ANSIC語言編寫、遵守BSD協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API。
它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹担╲alue)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。
redis一般是用來做緩存來用,緩存大致可以分為兩類,一種是應(yīng)用內(nèi)緩存,比如Map(簡單的數(shù)據(jù)結(jié)構(gòu)),以及EH Cache(Java第三方庫),另一種就是緩存組件,比如Memached,Redis;Redis是一個(gè)基于KEY-VALUE的高性能的存儲(chǔ)系統(tǒng),通過提供多種鍵值數(shù)據(jù)類型來適應(yīng)不同場景下的緩存與存儲(chǔ)需求
redis的官方的文檔:https://redis.io/documentation
至于redis的下載和安裝可以參考:https://redis.io/download
對于redis的命令使用這一塊我這里不打算展開講,可以參考redis的命令使用手冊
redis的命令使用手冊: http://redisdoc.com
推薦redis的設(shè)計(jì)與實(shí)現(xiàn)書籍的在線閱讀版:https://redisbook.readthedocs.io/en/latest/index.html
當(dāng)然對于剛學(xué)習(xí)redis可以參考中文的教程: http://www.redis.net.cn/tutorial/3501.html
接下來,我會(huì)按照解析來的幾個(gè)方向講解redis
redis的數(shù)據(jù)結(jié)構(gòu)
redis的過期時(shí)間和發(fā)布訂閱
redis的數(shù)據(jù)持久化以及性能
lua腳本
分布式redis
redis的客戶端的簡單使用
redis的分布式鎖實(shí)現(xiàn)
redis的應(yīng)用架構(gòu)以及布隆過濾器