Redis主流程伪代码

def main():init_server()while server_is_not_shutdown():time = aeSearchNearestTimer()beforeSleep()aeApiPoll(time)processFileEvents()processTimeEvents()clean_server()

Redis main函数调用流程图及关键节点

一条简单的set命令的执行流程

serverCron函数的功能

Q&A

1.bgsave执行时再次执行bgsave如何处理?

直接返回,返回信息会通知正在执行.

如果在aof rewrite时执行bgsave,会直接返回不能执行.

看代码此处应该有bgsave schedule命令,如果此时在执行aof rewrite,则会在aof结束后在serverCron中执行。

代码如下


2.aof rewrite正在执行时再次发送bgrewriteaof会如何处理?

直接返回,返回信息通知正在执行

如果此时在执行rdbsave,则会在serverCron中在rdbsave结束之后执行aof rewrite.

代码如下:


3.bgsave时如果master还在执行写入,由于linux COW机制,此时会给子进程拷贝一份数据,导致双倍内存。

待在测试环境验证是否会出现

4.client端发送的命令能否在server端保证顺序?

5.为什么redis本身支持分布式生产环境还在使用codis?

Redis单机版本框架相关推荐

  1. Docker部署redis单机版本 - 修改redis密码和持久化方式

    文章目录 前言 一.拉redis镜像文件 二.如果进行文件和目录的挂载 1.创建文件夹 2.使用配置文件启动 1 先启动一次redis 2 从网上下载一个conf文件 3 修改conf配置文件 4 启 ...

  2. 实战_05_SpringBoot整合redis单机版本

    接上一篇:实战04_redis-cluster集群搭建https://blog.csdn.net/weixin_40816738/article/details/100635263 下一篇:实战_06 ...

  3. Redis学习笔记之Redis单机,伪集群,Sentinel主从复制的安装和配置

    0x00 Redis简介 Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值 ...

  4. Redis单机系列文章--1.Redis单机的安装和配置(含视频)

    转载请注明出处哈:http://carlosfu.iteye.com/blog/2240426   一.Redis单机下载.编译.安装: cd /opt/soft wget http://downlo ...

  5. python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用

    python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装 安装及简单使用:https://github.com/andymccurdy/ ...

  6. redis linux工具安装,redis Linux版本的安装,以及一些基本的认识

    从redis的官网进行下载,我下载的是最新版本的 一般情况下,程序是安装在opt目录下面的,将程序移动到opt目录下面 安装环境: 版本查看: Redis的默认安装路径(这也是linux系统常用的) ...

  7. Redis单机最大并发量

    redis单机最大并发量 布隆过滤器 多级缓存 客户端缓存 应用层缓存 Expires和Cache-Control的区别 Nginx缓存管理 服务层缓存 进程内缓存 进程外缓存 缓存数据一致性问题的解 ...

  8. Redis各版本的特性及架构

    Redis各版本的特性及架构 1 Redis各版本的特性 1.1 Redis3.0 1.2 Redis3.2 1.3 Redis4.0 1.4 Redis5.0 1.5 Redis 6.0新特性 2 ...

  9. Elasticsearch单机版本安装

    Elasticsearch单机版本安装 1.环境准备 OS: CentOS Linux release 7.9.2009 (Core) 机器:10.28.19.107 ES.Kibana安装版本:7. ...

最新文章

  1. SpringMVC,针对不支持PUT、DELETE提交的游览器处理方式
  2. java 类和方法自动添加注释
  3. 七种Vue3传值方式
  4. centos node跟npm 安装
  5. 使用 IntraWeb (35) - TIWJQueryWidget
  6. 【java】java如何证明java发生了指令重排序
  7. 局域网arp欺骗病毒查找预防方法(1)
  8. DRF parser请求流程
  9. 洛谷3004 [USACO10DEC]宝箱Treasure Chest
  10. 转:ibatis配置简介
  11. 关于 MRC 开发中的一些细节
  12. MCGSpor软件下载及安装教程
  13. Redis 客户端工具
  14. wifi 性能 测试 android,WiFi性能测试
  15. 带参数的公众号二维码 生成+后台拦截java
  16. 计算机毕业设计ssm电脑销售管理系统
  17. Prim的故事(一文搞懂Prim算法)
  18. Can not set java.util.Date field com.atguigu.qqzone.pojo.Topic.topicDate to null value
  19. Linux-read函数
  20. 2010年3月编程语言排行榜

热门文章

  1. 【转载】并发数据结构
  2. 关于手风琴效果延迟执行解决方式
  3. ES6笔记(4)-- Symbol类型
  4. ***CI中的数据库操作(insert_id新增后返回记录ID)
  5. Nginx启动提示找不到libpcre.so.1解决方法
  6. 帝国cms底部代码哪里改?要修改版权和统计代码
  7. 一周第一次课笔记(1月22日)
  8. California Dreaming
  9. SSO 单点登录会话管理
  10. 编译x264 for ios