完結(jié)拉勾300分鐘吃透分布式緩存課件版轉(zhuǎn)載_第1頁(yè)
完結(jié)拉勾300分鐘吃透分布式緩存課件版轉(zhuǎn)載_第2頁(yè)
完結(jié)拉勾300分鐘吃透分布式緩存課件版轉(zhuǎn)載_第3頁(yè)
完結(jié)拉勾300分鐘吃透分布式緩存課件版轉(zhuǎn)載_第4頁(yè)
完結(jié)拉勾300分鐘吃透分布式緩存課件版轉(zhuǎn)載_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

課時(shí)1Redis協(xié)議課時(shí)18互聯(lián)網(wǎng)人實(shí)戰(zhàn)大學(xué)Redis協(xié)議分析Redis協(xié)議RESP

Redis

SerializationProtocol(Redis序列化協(xié)議)RESP二進(jìn)制安全,供redis或其他Client-Server使用Redis內(nèi)部,基于RESP進(jìn)一步擴(kuò)展細(xì)節(jié)RESP設(shè)計(jì)原則實(shí)現(xiàn)簡(jiǎn)單可快速解析便于閱讀Redis協(xié)議分析Redis協(xié)議請(qǐng)求響應(yīng)模型Ping-Pong模式幾乎所有命令響應(yīng)模式Pipeline模式一次發(fā)送多個(gè)請(qǐng)求,然后等待多個(gè)響應(yīng)Pub/Sub模式client訂閱channel,push協(xié)議響應(yīng)Redis協(xié)議分析Redis協(xié)議請(qǐng)求格式2種inlinecommand內(nèi)聯(lián)類型命令[參數(shù)][參數(shù)]Arrays類型同響應(yīng)的Arrays類型,后面詳細(xì)介紹Eg:mgetkey1key2\r\nEg:"*3\r\n$4\r\nmget\r\n$4\r\nkey1\r\n$4key2\r\n"Redis協(xié)議分析Redis協(xié)議響應(yīng)格式5種Simple

strings簡(jiǎn)單字符串以+開(kāi)頭,后跟字符串,

遇到CRLF停止非二進(jìn)制安全,不能包含CR或LFEg:"+OK\r\n"Errors錯(cuò)誤以-開(kāi)頭,后跟字符串,遇到CRLF停止Redis內(nèi)部規(guī)范:-后面為ERR或WRONGTYPEEg:"-ERRunknowncommand'foobar'"Eg:"-WRONGTYPEOperationagainstakey…"Redis協(xié)議分析Redis協(xié)議響應(yīng)格式5種Integers整數(shù)以:開(kāi)頭,后跟字符串表示的整數(shù)含義由具體命令決定Incr:增加后的整數(shù)Llen:list的長(zhǎng)度exists:1表示key存在,0表示key不存在Eg:":1000\r\n"Redis協(xié)議分析Redis協(xié)議響應(yīng)格式5種Bulk

Strings字符串塊以$開(kāi)頭,后跟字符串串長(zhǎng)度,CRLF結(jié)尾后跟真正的字符串內(nèi)容,以CRLF結(jié)束表示二進(jìn)制安全的字符串,最大長(zhǎng)度512M示例:"$6\r\nfoobar\r\n”空字串:"$0\r\n\r\n”NULL字串:"$-1\r\n"Redis協(xié)議分析Redis協(xié)議響應(yīng)格式5種Arrays數(shù)組類型以*開(kāi)頭,后跟數(shù)組長(zhǎng)度N,CRLF結(jié)尾;后跟N個(gè)任意RESP類型元素字串塊數(shù)組示例:"*2\r\n$3\r\nget\r\n$3\r\nkey\r\n”整數(shù)數(shù)組實(shí)例:"*3\r\n:1\r\n:2\r\n:3\r\n"混合數(shù)組實(shí)例:"*3\r\n:1\r\n-Bar\r\n$6\r\nfoobar\r\n"空數(shù)組:"*0\r\n”NULL數(shù)組:"*-1\r\n"Redis協(xié)議分析Redis協(xié)議協(xié)議命令分類8種存儲(chǔ)類型協(xié)議Pub-sub發(fā)布訂閱協(xié)議事務(wù)協(xié)議:multi,exec腳本協(xié)議:eval、evalsha,script等連接協(xié)議:權(quán)限,切換DB,關(guān)閉等復(fù)制協(xié)議:slaveof,role配置協(xié)議:config

set/get調(diào)試統(tǒng)計(jì)協(xié)議:slow

log,monitor,info其他內(nèi)部命令:migrate,dump,restoreRedis

Client的使用及改進(jìn)Redis

client(Java為例)Jedis輕量,簡(jiǎn)潔,便于集成和改造支持連接池指令維度操作不支持讀寫(xiě)分離Redisson基于Netty實(shí)現(xiàn),非阻塞IO,性能高支持異步請(qǐng)求,連接池支持讀寫(xiě)分離、讀負(fù)載均衡,但缺乏管理平臺(tái)內(nèi)建tomcatSession,支持spring

session集成實(shí)現(xiàn)復(fù)雜Redis

Client的使用及改進(jìn)Redis

client(Java為例)選擇Jedis:普通場(chǎng)景,簡(jiǎn)單Redisson:需要讀寫(xiě)分離、spring

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論