版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《沉箱預(yù)制施工方案》課件
- 小學(xué)五年級(jí)數(shù)學(xué)上期小數(shù)點(diǎn)乘除法計(jì)算練習(xí)題合集
- 七年級(jí)生物上冊(cè)第一單元生物和生物圈知識(shí)點(diǎn)總結(jié)(新版)新人教版
- 教師資格證考試普通話要求
- 《切事故都可以預(yù)防》課件
- 二年級(jí)上冊(cè)11 葡萄溝(教案)
- 瀝青砼攤鋪合同協(xié)議書(shū)
- 焊接培訓(xùn)資料:焊接應(yīng)力的消除
- 健康行業(yè)助理工作總結(jié)評(píng)述
- 電梯電梯銷售經(jīng)理銷售業(yè)績(jī)總結(jié)
- DB34∕T 4638-2023 創(chuàng)新型智慧園區(qū)建設(shè)與管理規(guī)范
- 巴渝文化探究課程設(shè)計(jì)
- 江蘇省南京市2025屆高三第一次調(diào)研考試(一模)英語(yǔ)試題含解析
- 無(wú)人機(jī)配送行業(yè)市場(chǎng)機(jī)遇分析
- 全國(guó)英語(yǔ)等級(jí)考試三級(jí)閱讀真題
- 數(shù)據(jù)庫(kù)原理-期末考試復(fù)習(xí)題及答案
- 2024至2030年版四川省路燈行業(yè)分析報(bào)告
- 電網(wǎng)工程施工安全基準(zhǔn)風(fēng)險(xiǎn)指南
- 蘇科版九年級(jí)物理上冊(cè)教案:11.5機(jī)械效率
- DL∕T 2602-2023 電力直流電源系統(tǒng)保護(hù)電器選用與試驗(yàn)導(dǎo)則
- DL∕T 612-2017 電力行業(yè)鍋爐壓力容器安全監(jiān)督規(guī)程
評(píng)論
0/150
提交評(píng)論