Golang 實現Redis 協定解析器的解決方案
2022-10-26 14:01:53
本文是 《用 Golang 實現一個 Redis》系列文章第二篇,本文將分別介紹Redis 通訊協定 以及 協定解析器 的實現,若您對協定有所瞭解可以直接閱讀協定解析器部分。
Redis 通訊協定
Redis 自 2.0 版本起使用了統一的協定 RESP (REdis Serialization Protocol),該協定易於實現,計算機可以高效的進行解析且易於被人類讀懂。
RESP 是一個二進位制安全的文字協定,工作於 TCP 協定上。RESP 以行作為單位,使用者端和伺服器傳送的命令或資料一律以 rn (CRLF)作為換行符。
二進位制安全是指允許協定中出現任意字元而不會導致故障。比如 C 語言的字串以