redis协议

Redis的通讯协议可以说大集汇了……消息头标识,消息行还有就行里可能还有个数据块大小描述.首先Redis是以行来划分,每行以 行结束。每一行都有一个消息头,消息头共分为5种分别如下:

(+) 表示一个正确的状态信息,具体信息是当前行+后面的字符。

(-)  表示一个错误信息,具体信息是当前行-后面的字符。

(*) 表示消息体总共有多少行,不包括当前行,*后面是具体的行数。

($) 表示下一行数据长度,不包括换行符长度 ,$后面则是对应的长度的数据。

(:) 表示返回一个数值,:后面是相应的数字节符。

以上就是Redis协议的基础组成部分,下面来分析几个指令了解一下具体相关指令和返回情况.

SET


客户端:

SET HENRY  HENRYFAN

以上命令是设置HENRY 的值为HENRYFAN.

在Redis的通讯协议上会以空格把命令拆分成三行;得到最终的命令如下:

*3

$3

SET

$5

HENRY

$8

HENRYFAN


 服务器端:

//服务端操作成功
+OK


//如果出现错误服务端会返回
-错误信息

 

参考:http://www.cnblogs.com/smark/p/3247620.html

原文地址:https://www.cnblogs.com/thrillerz/p/5523458.html