Redis网络协议详解
Redis以行来划分,每行以\r\n结束,每个消息头都有一个消息头,消息头分为5种:
1. (+)表示一个正确的状态信息
2. (-)表示一个错误的状态信息
3. (*)表示消息总共有多少行
4. ($)表示下一行数据的长度
5. (:)表示返回一个数值
举个例子:
客户端发送命令
SET name Jack
*3\r\n
$3\r\n
SET\r\n
$4\r\n
name\r\n
$4\r\n
Jack\r\n
服务器响应
操作成功 +ok\r\n
操作失败 -<错误信息>\r\n
如果想查看更多的协议内容,可以打开服务器的AOF持久化功能,然后查看生成的.aof文件。