Redis网络协议较为简单,易于阅读。
命令或数据已\r\n结尾,但除了状态回复,其他数据都是二进制安全的(包含长度)
头部如下:
+ 正确的状态信息,具体信息是当前行+后面的字符。
- 一条错误信息,具体信息是当前行-后面的字符。
* 表示消息共有多少行,不包括当前行,*后面是具体的行数。
$ 表示下一行数据长度,不包括换行符长度\r\n,$后面接对应的长度的数据。
: 表示返回一个数值,:后面是相应的数字节符。
其中$用于指定长度。
请求和回复都是这种格式。
例子:
*3 $2 hi $5 hello