上篇我们简单介绍了 redis 客户端的一些基本概念,包括其 client 数据结构中对应的相关字段的含义,本篇我们结合这些,来分析分析 redis 服务端程序是如何运行的。一条命令请求的完成,客户端服务端都经历了什么?服务端程序中定时函数 serverCron 都有哪些逻辑? 一、redis 客户 ...
分类:
其他好文 时间:
2020-03-19 21:37:01
阅读次数:
53
原文:redis 系列20 服务器下二. serverCron函数 2.3 更新服务器每秒执行命令次数 serverCron函数中的trackOperationsPerSecond函数会以每100毫秒一次的频率执行,这个函数以抽样计算的方式,估算并记录服务器在最近一秒钟处理的命令请求数量,这个值可以... ...
分类:
其他好文 时间:
2019-01-06 23:04:18
阅读次数:
341
二. serverCron函数 2.3 更新服务器每秒执行命令次数 serverCron函数中的trackOperationsPerSecond函数会以每100毫秒一次的频率执行,这个函数以抽样计算的方式,估算并记录服务器在最近一秒钟处理的命令请求数量,这个值可以通过info status命令的in ...
分类:
其他好文 时间:
2018-12-07 20:45:31
阅读次数:
181
每隔一段时间去检查各个节点的状态,主要的函数如下: cluster node信息的存放位置:server.cluster->nodes server.c ->serverCron-> This is executed 10 times every second cluster.c->clusterC ...
分类:
其他好文 时间:
2018-07-09 22:27:37
阅读次数:
168
首先看下serverCron中,服务器每次循环执行的时候,都会刷新server.lrulock。 使用的方法是getLRUClock,LRU_CLOCK_RESOLUTION代表LRU算法的精度,即一个LRU的单位是多长时间。LRU_CLOCK_MAX代表逻辑时钟的最大位数,类似现实中的表盘,划分了 ...
分类:
其他好文 时间:
2018-03-02 20:58:40
阅读次数:
255
概述 Redis服务器负责与客户端建立网络连接,之前的数据结构部分已经看过了,本章主要从下面三个方面讲解。 1.服务器执行命令的过程 2.serverCron函数的执行 3.服务器的初始化 服务器执行命令的过程 一个客户端请求命令的基本过程大致如下: 1.客户端发送请求命令给服务器,比如set ke ...
分类:
其他好文 时间:
2017-10-09 16:42:11
阅读次数:
269
Redis服务器是一个事件驱动程序,服务器需要处理以下两类事件:文件事件(fileevent):Redis服务器通过套接字与客户端(或者其他Redis服务器)进行连接,而文件事件就是服务器对套接字操作的抽象。时间事件(timeevent):Redis服务器中的一些操作(比如serverCron函数)需要在给..
分类:
其他好文 时间:
2017-02-22 15:21:49
阅读次数:
172
服务器1. 一个命令请求从发送到完成主要包括以下步骤: 1). 客户端将命令请求发送给服务器 2). 服务器读取命令请求,并分析出命令参数 3). 命令执行器根据参数查找命令的实现函数,然后执行实现函数并得出命令回复 4). 服务器将命令回复返回给客户端2. serverCron函数默认每隔...
分类:
其他好文 时间:
2016-01-08 01:56:37
阅读次数:
221
Redis服务器负责与多个客户端建立连接,处理客户端请求,保存各个数据库状态。通过使用由I/O多路复用技术实现的事件处理器,Redis服务器采用单线程单进程处理客户端命令请求。Redis通过redisServer结构来记录服务端的各种状态。
命令请求执行过程
1、客户端发送命令请求,客户端将命令请求转换成协议格式。
2、服务端读取命令请求,将命令请求缓存在客户端输入缓冲区中,对输入缓冲区中的...
分类:
其他好文 时间:
2015-03-20 09:22:04
阅读次数:
162
1 AOF日常命令append:
1.1. Redis执行文件事件:执行用户命令,并将该命令缓存于Server.aof_buf中{函数1}
1.2. Redis执行时间时间的ServerCron:依据参数server.aof_flush_postponed_start,{函数4}
1.2.1. 将redisServer.aof_buf写入文件Server.aof_fd。
1.2.2. 该文件何时fsync到磁盘有三种机制:
AOF_FSYNC_EVERYSEC 每秒调用...
分类:
其他好文 时间:
2014-09-14 19:23:57
阅读次数:
402