redis协议
Redis的通讯协议可以说大集汇了……消息头标识,消息行还有就行里可能还有个数据块大小描述.首先Redis是以行来划分,每行以\r\n行结束。每一行都有一个消息头,消息头共分为5种分别如下:
(+) 表示一个正确的状态信息,具体信息是当前行+后面的字符。
(-) 表示一个错误信息,具体信息是当前行-后面的字符。
(*) 表示消息体总共有多少行,不包括当前行,*后面是具体的行数。
($) 表示下一行数据长度,不包括换行符长度\r\n,$后面则是对应的长度的数据。
(:) 表示返回一个数值,:后面是相应的数字节符。
以上就是Redis协议的基础组成部分,下面来分析几个指令了解一下具体相关指令和返回情况.
SET
客户端:
SET HENRY HENRYFAN
以上命令是设置HENRY 的值为HENRYFAN.
在Redis的通讯协议上会以空格把命令拆分成三行;得到最终的命令如下:
*3\r\n $3\r\n SET\r\n $5\r\n HENRY\r\n $8\r\n HENRYFAN\r\n
服务器端:
//服务端操作成功 +OK\r\n //如果出现错误服务端会返回 -错误信息\r\n
参考:http://www.cnblogs.com/smark/p/3247620.html