redis--resp

一、RESP 协议简介

RESP 全称 Redis Serialization Protocol,Redis 客户端与服务端之间的通信协议,属于 CS 架构通信规范。

  • 版本演进
    1. Redis1.2:引入 RESP
    2. Redis2.0:RESP2,成为标准通信协议
    3. Redis6.0:升级为 RESP3,扩充数据类型,支持客户端缓存新特性
  • 基础通信流程(常规命令,不含 Pipeline、PubSub)
    1. 客户端发送命令
    2. 服务端解析执行,返回结果

二、RESP2 5 种基础数据类型(靠首字节区分,\r\n即 CRLF 作为结束符)

表格

标识 类型 格式说明 & 示例
+ 单行字符串 简单字符串,+内容\r\n,例:+OK\r\n
- 错误信息 和单行字符串格式一致,承载异常信息,例:-Error message\r\n
: 数值 数字字符串,:[数字]\r\n,例::10\r\n
$ 多行字符串(Bulk String) 二进制安全字符串,最大 512MB• $5\r\nhello\r\n:长度 5,内容 hello• $0\r\n\r\n:空字符串• $-1\r\n:key 不存在(nil)
* 数组 *元素个数\r\n,后面依次拼接各个元素(元素可以是上面任意类型)例 set name 虎哥:*3\r\n$3\r\nset\r\n$4\r\nname\r\n$6\r\n虎哥\r\n
相关推荐
莫晓燚1 小时前
搭建Redis 主从复制---实战
数据库·redis·缓存
IT规划师4 小时前
Redis 数据类型全解 - List:用对是队列用错是灾难(二)
redis·消息队列·.net
重生之我是Java开发战士6 小时前
【Redis】Java & JavaSpring 客户端
java·redis·bootstrap
是程序喵呀6 小时前
Redis实现持久化
数据库·redis·缓存
余槐i7 小时前
PostgreSQL 加索引后查询反而更慢:优化器弃用索引的 3 种情形
spring boot·redis·mysql·postgresql·事务
我不会起名字3227 小时前
Redis 从 0 到 1(十三):分布式锁被误删、锁不住?Go 无 Lua 实现 3 级防御
redis·go·分布式锁·watch·setnx
草莓熊Lotso7 小时前
【C++ 基于微服务的即时通讯系统】网关基建:cpp-httplib 与 WebSocketpp 从入门到实战
linux·开发语言·数据库·c++·redis·微服务·云原生
m0_6399069416 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis