1. 程式人生 > >Redis-通訊協議

Redis-通訊協議

RESP協議: Redis 序列化協議的簡寫。它是一種直觀的文字協議,優勢在於實現異常簡單,解析效能極好。

將傳輸現已分為5種最小單元型別:每個單元型別結束時統一加上回撤換行符號\r\n,協議型別如下:

1、單行字串 以 + 符號開頭。

2、多行字串 以 $ 符號開頭,後跟字串長度。

3、整數值 以 : 符號開頭,後跟整數的字串形式。

4、錯誤訊息 以 - 符號開頭。

5、陣列 以 * 號開頭,後跟陣列的長度。

6、例如:

 

Redis 將所有資料都放在記憶體,用一個單執行緒對外提供服務,單個節點在跑滿一個 CPU 核心的情況下可以達到了 10w/s 的超高 QPS

客戶端-》伺服器傳送指令:傳送的指令只有一種格式,多行字串陣列。比如一個簡單的 set 指令set author codehole會被序列化成下面的字串,如下圖:

伺服器-》客戶端: