图解Redis通信协议

Redis客户端和服务端之间使用一种名为RESP(REdis Serialization Protocol)的二进制安全文本协议进行通信。RESP设计的十分精巧,下面是一张完备的协议描述图:


redis protocol

举个栗子

用SET命令来举例说明RESP协议的格式。

redis> SET mykey "Hello"
"OK"

实际发送的请求数据:

*3\r\n$3\r\nSET\r\n$5\r\nmykey\r\n$5\r\nHello\r\n

实际收到的响应数据:

+OK\r\n

每种命令对应的回复类型,可以查询Redis官网的命令列表Command reference。更详细的协议说明请参考Redis官方协议规范Redis Protocol specification

参考

[1] 通信协议(protocol),http://redisdoc.com/topic/protocol.html
[2] Redis Protocol specification,https://redis.io/topics/protocol

版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在使用 Redis 的过程中经常会好奇,在 Redis-Cli 中键入 SET KEY MSG 并回车之后,Red...
    Draveness阅读 3,240评论 3 10
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,868评论 18 139
  • 本文将从Redis的基本特性入手,通过讲述Redis的数据结构和主要命令对Redis的基本能力进行直观介绍。之后概...
    kelgon阅读 61,255评论 23 625
  • 1 智商是被炒作出来的概念 比奈的智商测量表传入美国后,智商成为了一个炒作的概念,成为了当权者用来把人区分出来的工...
    Janet大昕鼓徵阅读 239评论 0 2
  • 俗话说得好,“好吃不过饺子”。在北方的面食中,饺子算是最具代表性的了。在中国,饺子可以说历史悠久。早在三国时期,魏...
    迟遇晚晚丷阅读 624评论 3 16