redis协议

背景

这篇文章是对redis章节的总结和学习笔记。

数据结构

主要包含两部分
1.数量/大小
参数的数量,有几个参数的意思
2.参数
包含大小和数据。
大小就是该参数的字节大小,有几个字节的意思。数据就是内容。

看到没有,其实最外层的也是大小和数据,比如1的数量/大小,其实就是几个参数的意思,这是大小;然后,数据就是参数。


举例子

格式说明


实际格式
是一个字符串,即按redis格式要求来的一个字符串。就跟我们平常老说,json格式的字符串一样。本质是字符串。格式的作用,只是用来给解析,然后得到自己需要的哪几个部分的哪几个数据,这就是所谓的服务器和客户端的通信协议。


响应为什么没有+加号?
因为很多客户端,比如java客户端,在得到服务器的响应数据的时候,已经解析了。也就是说,服务器返回的数据肯定是标准格式的,有+号,是+OK。后面没了,是因为客户端解析了,去掉了没用的信息,按自己需要的格式来显示。

如果想要获取服务器的原始返回数据,可以使用telnet nc等。

协议是什么,以及协议的作用

说白了,协议就是规定一个格式,比如服务器和客户端需要通信,其实就是互相发送字符串,但是怎么才能互相看得懂呢?就是给字符串规定一个格式。双方按这个格式来读数据,然后再解析数据。这就是通信的所有完整的流程。

具体流程是:
用户:输入普通的一般的字符串——客户端:解析为服务器需要的格式,然后发送给服务器——服务器:接收遵守redis服务器客户端通信协议(即redis协议)的数据,然后解析,最后返回响应数据(也是按指定格式)——客户端:接收数据,解析数据——用户:最终看到的数据(很可能被客户端篡改过)。

参考

redis运维

转载于:https://juejin.im/post/5ceccc4d6fb9a07ebd48b647

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值