redis
redis
张哲溪
日拱一卒,功不唐捐
展开
-
RDB持久化
RDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发。触发机制:手动触发分别对应save和bgsave命令:1.save命令:阻塞当前redis服务器,知道RDB过程完成为止,对于内存比较大的实例会造成长时间阻塞,线上和环境不建议使用。2.bgsave命令:redis进程执行fork操作创建子进程,RDB持久化过程由子进程负责,完成后自动结束。阻塞只发生在fork阶段,一般时间很短。 bgsave命令是针对save租的问题做的优化。因此redis内部所有原创 2021-06-06 18:09:12 · 385 阅读 · 0 评论 -
Redis中持久化的方式以及区别和优缺点?
1.RDB持久化是指在指定时间内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,由子进程去做后面的操作。先将数据集写入到临时文件,写入成功后,在替换之前的文件,用二进制压缩存储。触发RDB分为手动触发和自动触发。 2.AOF持久化是以日志的形式记录服务器所处理的每一个写,删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录。...原创 2021-06-02 19:51:21 · 359 阅读 · 0 评论 -
RDB和AOF的流程
RDB的写入流程:1.redis执行bgsave命令,Redis判断当前存在正在进行执行的子进程,如RDB/AOF子进程,存在bgsave命令直接返回2.fork出子进程,fork操作中Redis父进程会阻塞3.fork完成返回 59117:M 13 Apr 13:44:40.312 * Background saving started by pid 591804.子进程进程对内存数据生成快照文件5.子进程告诉父进程处理完成AOF写入的流程如下:1)所有的写入命令会追加到aof_buf(原创 2021-06-02 19:04:14 · 571 阅读 · 0 评论 -
宿主机部署redis初始化redis时报错解决
问题描述:在安装完redis以后,需要初始化一下redis,但是报了下图所示的错误。解决步骤:因为我使用的redis版本是最新的版本,配置文件有一些内容没办法使用了,需要将如下的部分注释掉。注释掉以后,就可以继续执行初始化的脚本进行redis的初始化工作。...原创 2021-05-18 10:13:15 · 815 阅读 · 0 评论 -
二进制部署redis时报错解决
问题描述:二进制部署redis的时候,没办法make,报如下的报错:解决步骤:1.我部署的redis的版本是redis-6.0.6版本的,安装redis6.0.6版本的,gcc的版本一定要5.3以上的,我的gcc版本是低于5.3版本的,执行如下命令,升级gcc的版本。yum -y install centos-release-scl && yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binuti原创 2021-05-17 10:46:58 · 1099 阅读 · 0 评论