redis-通信协议

resp(Redis Serialization Protocol)

resp是Redis序列化协议的简写,是文本协议,
Redis协议将传输的结构数据分为5种最小单元类型,单元结束时统一加上回车换行符
1. 单行字符串,以 + 符号开头
    + hello world\r\n
2.多行字符串,以$符号开头,后跟字符串长度
    $11\r\nhello world\r\n
3.整数值 以: 符号开头,后跟整数的字符串形式
    :1024\r\n
4.错误消息  以 - 符号开头
     -WRONGTYPE Operation ag.... wrong kind of value
 5. 数组 以 * 号开头,后跟数组的长度
      *3\r\n:1\r\n:2\r\n:3\r\n
 NULL 用多行字符串表示,不过长度要写成-1
 空串 用多行字符串表示,长度填0
      $0\r\n\r\n    

优势:

      1.实现简单
      2. 解析性能极好

客户端->服务器

客户端向服务器发送的指令只有一种格式,多行字符串数组
eg: set author message
序列化后的字符串
*3\r\n6\r\nauthor\r\n3 7 三个单词对应的字符串长度

服务器->客户端

  响应消息也是以上5种基本类型的组合

你可能感兴趣的:(redis-通信协议)