REDIS 协议简解


redis客户端与服务器通讯时用了redis自己设计的RESP (REdis Serialization Protocol)协议。

RESP协议用了多种符号的前辍来请求与回复数据,以表明不同种类的数据类型。

一、redis客户端向服务器发送数据的格式为:
  "*Arraysnumber\r\n"
  "$number\r\nstr\r\n"

说明:
  Arraysnumber:  为命令、key、value的个数。
  number:  为每个字符串的字符数。
  str:  为命令、key、value等。
  (CRLF)\r\n:  回车换行,原于英文机械打字机,

例子:SET CAT MQ
  "*3\r\n"
  "$3\r\nSET\r\n"
  "$3\r\nCAT\r\n"
  "$1\r\nMQ\r\n"


二、  redis服务器返回给客户端结果有5种格式

1.  简单的符串(Simple Strings),首字节为"+"
例子:
    set cat mq
    返回:"+OK\r\n"

2.  整数,首字节为":"
例子:
    set cat 1
    incr cat
    返回:":2\r\n"

3.  数组,首字节为"*"
例子:
    hmget onehash cat dog
    返回:"*2\r\n$2\r\nmq\r\n$4\r\nlulu\r\n"


4.  字符串块,首字节为"$"
例子:
    get cat
    返回:"$2\r\nmq\r\n"


5.  错误消息,首字节为"-"
例子:
   get cat p
   返回:"-ERR wrong number of arguments for 'get' command\r\n"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值