Redis-客户端通讯协议

Redis-客户端通讯协议

一.概述

1.客户端与服务端的通讯协议是建立在TCP协议之上构建的

2.Redis指定了RESP(Redis SerializationProtocol,Redis序列化协议)实现客户端与服务端的正常交互,这种协议简单高效,即容易被机器解析,又容易被人类识别。

二.发送命令格式

RESP规定一条命令的格式如下:其中CRLF代表\r\n

*<参数数量> CRLF       

$<参数1的字节数量> CRLF

<参数1> CRLF

$<参数的字节数量> CRLF

<参数1> CRLF

例如:set hello world

协议转换后

*3

$3

SET

$5

hello

$5

world

上述内容只是格式化显示的结果,实际的传输格式为如下代码:

*3\r\n$3\r\nSET\r\n$5\r\nhello\r\n$5\r\nworld\r\n

三. 返回结果格式

Redis的返回结果类型分为以下五种:

状态回复:在RESP中第一个字节为“+”

错误回复:在RESP中第一个字节为“-”

整数回复:在RESP中第一个字节为“:”

字符串回复:在RESP中第一个字节为“$”

多条字符串回复:在RESP中第一个字节为“*”

Redis-cli只能看到最终的执行结果,那是因为redis-cli本身就是按照RESP进行了结果解析,所以看不到中间结果。

知识小贴士:作者尽心运营的知识星球社群【请点击:简道源码&&架构分析 加入】(可添加运营同学WX:wx454876882)持续拉新中...,定期的jdk与核心框架源码解析,主流行业解决方案与架构设计资料查阅与下载尽在其中。帮助行业新人和有志于技术的专业人士体系化的学习源码与系统架构,获取业界知名技术峰会和厂商对外公布的主流业务场景的解决方案。同时这个星球也是一个社群,大家可以在社群中结识有识之士,共同探讨,答疑解惑。希望可以通过这个星球帮助大家每日进步一点点,一年持续365天,共勉~

本星球 聚焦于Java源码分析,架构解析。低代码,可扩展和高可用架构设计。帮助你更好地学编程,欢迎想进步的同学!仅精品案例的资料整理即物超所值。让我们大家一起每日进步一点点~,你可以:

1. 阅读星球专属的编程知识和优质文章

2.JAVA知识从点和面,深度挖掘。通过点,形成面。提升自身的技术广度和深度。

3. 加入星球专属交流群,帮你找到学习伙伴、获取每日优质文章推送等

4.业界优秀案例资料学习及下载

5. 和伙伴们一起学习打卡,增加动力,共同进步

6.工作、学习和方法论。如何提升软实力,比如写文章、画架构图、技术产品的营销、社区的运营等等。

7.招聘、面试和晋升。如何提前准备面试,有什么套路?如何提升硬实力,少走弯路?

8.提供简历优化服务哟。本人常年招聘,也就面试了1000+程序员和架构师~~

9.解答你的疑问。

10.每日进步一点点(最重要的一点): 让自己与众不同,每天学习1-2小时源码和架构知识,365天后再回首,1年前的自己可能是个SB吧。用通勤的时间让自己成长,让优秀变成一种习惯。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大道化简

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值