redis大体执行过程

2022/8/6 2:22:46

本文主要是介绍redis大体执行过程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

what:

  redis服务器执行的大体流程:

    1、client向服务器发送请求命令;

    2、redis服务器从请求中读取命令,并交给“请求处理器”去执行;

      大体分为:a、请求保存到输入缓冲区里面;b、解析协议,提取出命令参数,保存到客户端状态argv和argc属性;c、调用命令执行器,执行客户端请求命令;

 

     3、命令执行:

      大体分为:查找命令 -> 执行预处理 -> 执行命令实现函数 -> 后续处理

      查找命令:就是查找命令(如:set命令)对应的redisCommand结构。对于set命令,set是key,redisCommand结构是value。其中redisCommand里面有很多属性。

      执行预处理:为了确保命令可以正确顺利地被执行,做的一些前期检查和准备;

      执行命令实现函数:执行操作:client>cmd>proc(client),产生响应回复。回复会被保存到输出缓冲里面,就是buf属性和reply属性。之后函数还会为客户端的套接字关联命令回复处理器。当客户端套接字变成可写状态时,服务器就是执行命令回复处理器。将保存在客户端输出缓冲区的数据发送给客户端。发送完成后,会把输出缓冲区清空。

      后续处理:如,服务器开启了AOF持久化功能,那么AOF持久化模块会将刚刚执行的命令请求写入到AOF缓冲区里面;如,有其他从服务器正在复制当前这个服务器,那么服务器会将刚刚执行的命令传播给所有从服务器。

 



这篇关于redis大体执行过程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程