Skip to content

Commit a0c3c16

Browse files
committed
add redis serialization content to the readme file
1 parent 3d946fa commit a0c3c16

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

springboot-jedis-sample/README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ epoll的设计和实现与select完全不同,epoll通过在linux内核中申
4343
> - 调用epoll_wait收集发生事件的连接;
4444
在进程启动时创建一个epoll对象,然后在需要的时候向这个epoll对象中添加或者删除连接。同时,epoll_wait的效率也非常高,因为epoll_wait时,并没有一股脑的想操作系统复制连接句柄数据,内核也不需要去遍历全部连接。
4545

46+
------------
4647

4748
##### Redis指令队列原理
4849
Redis Server就是通过blocking_keys(指令队列)和 ready_keys(响应队列)两个数据结构来实现阻塞操作。但整个阻塞并没有阻塞EventLoop本身,从而实现指令的快速响应。算是一个典型的空间换时间的设计思路。
@@ -53,5 +54,14 @@ Redis会将每个客户端套接字都关联一个指令队列。客户端的指
5354
**响应队列:**
5455
Redis同样也会为每个客户端套接字关联一个响应队列。Redis服务器通过响应队列来将指令的返回结果回复给客户端。如果队列为空,那么意味着连接暂时处于空闲状态,不需要去获取写事件。
5556

57+
------------
58+
59+
##### Redis序列化协议
60+
Redis服务器与客户端通过RESP(REdis Serialization Protocol)协议通信。
61+
RESP特点:容器实现、解析快、可读性
62+
RESP底层采用TCP的连接方式,通过TCP进行传输数据,根据解析规则解析相应信息,完成交互。
63+
64+
------------
65+
5666

5767

0 commit comments

Comments
 (0)