当前位置: 首页 > article >正文

Redis远程字典服务器(11)—— redis客户端介绍

一,基本介绍

  1. 前面学习的主要是各种Redis的基本操作/命令,都是再Redis命令行客户端,手动执行的,但是这种方式不是我们日常开发中主要的形式
  2. 更多的时候,是使用Redis的api,来实现定制化的Redis客户端程序,来进一步操作Redis服务器(简单来说就是:用程序来操作Redis服务器)
  3. MySQL也是如此,会用C++代码结合MySQL的api头文件来操作MySQL

Redis的命令行客户端,或者第三方图形化客户端,本质上都属于是“通用的客户端程序”,相比之下,我们在工作中更希望使用到的是“专用的”,“定制化”的客户端程序

Redis能支持很多很多的编程语言,但是往上大部分都是以Java为主,但是由于本人是主攻C++方向的,所以后面的客户端代码编写,我们以C++语言为主哈~ 

我们前面也说过,Redis客户端和服务器是以网络通信的方式进行数据交互的:

  1. 网络通信过程中,会用到很多的“协议”,比如数据链路层的以太网,网络层的IP协议,传输层的TCP/UDP协议,这些协议是固定好的,是在系统内核或者驱动程序中实现,咱们程序员只能选择,不能修改
  2. 而对于应用层,虽然业界有很多成熟的应用层协议,比如HTTP和HTTPS等,但是更多的时候,都会“自定义”应用层协议,Redis的应用层协议,就是自定义的协议(Redis的传输层还是TCP )
  3. 客户端按照这里的应用层协议发送请求,服务器按照这个协议进行解析,再按照这个协议构造响应,客户端这个响应(这个操作之所以能完成,就是因为开发客户端的人,和开发服务器的人,都知道 协议的具体细节)
  4. 咱们作为第三方,要想开发Redis客户端,也就需要知道Redis的应用层协议,而这个协议,官网是就有完整的介绍:Redis serialization protocol specification | Docs

二,认识RESP

Redis serialization protocol specification | Docs

Redis自定义应用层的协议名称,就叫做“RESP”,全称为:

 ​​​​

 

 总结:搬出上述内容只是为了理解RESP,了解Redis底层的通信原理,不影响后续代码的编写,并且我们不用真的按照文档里的协议,去解析/构造字符串,因为这套协议早就已经公开了,已经有很多大佬实现了这套协议的解析/狗仔,我们只需要使用这些大佬们提供的库,就可以比较简单方便地来完成和Redis服务器通信地操作了(正所谓,站在巨人的肩膀上)

Redis serialization protocol specification | Docs 


http://www.kler.cn/a/280522.html

相关文章:

  • 新华三H3C HCL配置IS-IS基本配置
  • ​拓​竹​二​面​
  • 漏洞披露-金慧-综合管理信息系统-SQL
  • 方法引用
  • 【Linux系统编程】system V——信号量
  • 数据库-建表时是否需要设置外键?有啥影响?
  • 搭建自己的金融数据源和量化分析平台(七):定时更新上市公司所属行业门类及大类
  • Linux之shell脚本的if分支
  • 猫咪浮毛如何清理?希喂、安德迈、范罗士宠物空气净化器功能实测
  • VMware虚拟化常见故障问题及解决方法汇总(不定期更新)
  • 声音克隆GPT-SoVITS 2.0软件和详细的使用教程!
  • Excel技能分享:根据匹配公式设置单元格背景色
  • 基于xr-frame实现微信小程序的人脸识别3D模型叠加AR功能(含源码)
  • 浪潮服务器主板集成RAID常见问题
  • 坐牢第三十一天(c++)
  • USB设备驱动代码分析(鼠标)
  • Jenkins服务安装配置
  • 告别手动录入,自动化PDF转Excel工具精选
  • HTTP代理端口的設置應用
  • 泰国中小企业局局长率考察团到访深兰科技