redis的持久化方式RDB和AOF的区别

https://blog.csdn.net/m0_38110132/article/details/76906422

 

redis的持久化方式RDB和AOF的区别

2017年08月08日 14:44:33 浮生忆梦 阅读数:22220

1、前言

最近在项目中使用到Redis做缓存,方便多个业务进程之间共享数据。由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF持久化(原理是将Reids的操作日志以追加的方式写入文件)。那么这两种持久化方式有什么区别呢,改如何选择呢?网上看了大多数都是介绍这两种方式怎么配置,怎么使用,就是没有介绍二者的区别,在什么应用场景下使用。

2、二者的区别

RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。

 

AOF持久化以日志的形式记录服务器所处理的每一个写、删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录。

 

3、二者优缺点

RDB存在哪些优势呢?

1). 一旦采用该方式,那么你的整个Redis数据库将只包含一个文件,这对于文件备份而言是非常完美的。比如,你可能打算每个小时归档一次最近24小时的数据,同时还要每天归档一次最近30天的数据。通过这样的备份策略,一旦系统出现灾难性故障,我们可以非常容易的进行恢复。

2). 对于灾难恢复而言,RDB是非常不错的选择。因为我们可以非常轻松的将一个单独的文件压缩后再转移到其它存储介质上。

3). 性能最大化。对于Redis的服务进程而言,在开始持久化时,它唯一需要做的只是fork出子进程,之后再由子进程完成这些持久化的工作,这样就可以极大的避免服务进程执行IO操作了。

4). 相比于AOF机制,如果数据集很大,RDB的启动效率会更高。

RDB又存在哪些劣势呢?

1). 如果你想保证数据的高可用性,即最大限度的避免数据丢失,那么RDB将不是一个很好的选择。因为系统一旦在定时持久化之前出现宕机现象,此前没有来得及写入磁盘的数据都将丢失。

2). 由于RDB是通过fork子进程来协助完成数据持久化工作的,因此,如果当数据集较大时,可能会导致整个服务器停止服务几百毫秒,甚至是1秒钟。

AOF的优势有哪些呢?

1). 该机制可以带来更高的数据安全性,即数据持久性。Redis中提供了3中同步策略,即每秒同步、每修改同步和不同步。事实上,每秒同步也是异步完成的,其效率也是非常高的,所差的是一旦系统出现宕机现象,那么这一秒钟之内修改的数据将会丢失。而每修改同步,我们可以将其视为同步持久化,即每次发生的数据变化都会被立即记录到磁盘中。可以预见,这种方式在效率上是最低的。至于无同步,无需多言,我想大家都能正确的理解它。

2). 由于该机制对日志文件的写入操作采用的是append模式,因此在写入过程中即使出现宕机现象,也不会破坏日志文件中已经存在的内容。然而如果我们本次操作只是写入了一半数据就出现了系统崩溃问题,不用担心,在Redis下一次启动之前,我们可以通过redis-check-aof工具来帮助我们解决数据一致性的问题。

3). 如果日志过大,Redis可以自动启用rewrite机制。即Redis以append模式不断的将修改数据写入到老的磁盘文件中,同时Redis还会创建一个新的文件用于记录此期间有哪些修改命令被执行。因此在进行rewrite切换时可以更好的保证数据安全性。

4). AOF包含一个格式清晰、易于理解的日志文件用于记录所有的修改操作。事实上,我们也可以通过该文件完成数据的重建。

AOF的劣势有哪些呢?

1). 对于相同数量的数据集而言,AOF文件通常要大于RDB文件。RDB 在恢复大数据集时的速度比 AOF 的恢复速度要快。

2). 根据同步策略的不同,AOF在运行效率上往往会慢于RDB。总之,每秒同步策略的效率是比较高的,同步禁用策略的效率和RDB一样高效。

二者选择的标准,就是看系统是愿意牺牲一些性能,换取更高的缓存一致性(aof),还是愿意写操作频繁的时候,不启用备份来换取更高的性能,待手动运行save的时候,再做备份(rdb)。rdb这个就更有些 eventually consistent的意思了。

4、常用配置

RDB持久化配置

Redis会将数据集的快照dump到dump.rdb文件中。此外,我们也可以通过配置文件来修改Redis服务器dump快照的频率,在打开6379.conf文件之后,我们搜索save,可以看到下面的配置信息:

save 900 1              #在900秒(15分钟)之后,如果至少有1个key发生变化,则dump内存快照。

save 300 10            #在300秒(5分钟)之后,如果至少有10个key发生变化,则dump内存快照。

save 60 10000        #在60秒(1分钟)之后,如果至少有10000个key发生变化,则dump内存快照。

AOF持久化配置

在Redis的配置文件中存在三种同步方式,它们分别是:

appendfsync always     #每次有数据修改发生时都会写入AOF文件。

appendfsync everysec  #每秒钟同步一次,该策略为AOF的缺省策略。

appendfsync no          #从不同步。高效但是数据不会被持久化。

 

加载数据库

在完成了上面的所有的初始化工作之后,Redis开始加载数据到内存中,如果启用了appendonly了,则Redis从appendfile加载数据,否则就从dbfile加载数据

 

1. 从appendfile中加载数据:loadAppendOnlyFile()函数

在此之前,我们先来看一下appendfile里面保存了什么,如我执行了下面两条命令(记得在配置文件中开启appendonly):

redis> SET mykey001 myvalue001
OK
redis> GET mykey001
"myvalue001"

使用cat命令查看appendonly.aof的内容:

复制代码

$ cat appendonly.aof
*2
$6
SELECT
$1
0
*3
$3
SET
$8
mykey001
$10
myvalue001

复制代码

在appendonly.aof文件中保存的正是从客户端发过来的请求命令,还可以看到对于GET命令,并没有保存。

既然appendonly.aof中保存了所有写入数据的请求命令,那么在加载数据的时候只要重新执行一遍这些命令即可。

事实上Redis也正是这么做的,在开始加载之前暂时关闭appendonly,然后Redis创建一个假的Redis客户端。

然后读取appendonly.aof文件中的命令,在假的Redis客户端上下文中执行,同时服务器也不对该客户端做任何应答。

如果加载过程中物理内存不够用,并且Redis开启了VM,则还需要处理swap操作,最后加载完成后重新设置appendonly标志。

2. 从dbfile中加载数据:rdbLoad()函数

如果Redis没有开启appendonly,就需要从数据库文件中加载数据到内存,基本步骤如下:

a. 处理SELECT命令,即选择数据库 
b. 读取key 
c. 读取value 
d. 检测key是否过期 
e. 添加新的对象到哈希表 
f. 设置过期时间(如果需要) 
g. 如果开启了VM,处理swap操作

 

Redis启动加载过程

1. 初始化全局服务器配置

2. 加载配置文件(如果指定了配置文件,否则使用默认配置)

3. 初始化服务器

4. 加载数据库

5. 网络监听

下面对上面这些步骤进行介绍

初始化全局服务器配置

初始化全局服务器配置通过initServerConfig()函数完成,主要是初始化server变量

初始化的内容包括下面几个方面:

1. 网络监听相关,如绑定地址,TCP端口等 
2. 虚拟内存相关,如swap文件、page大小等 
3. 保存机制,多长时间内有多少次更新才进行保存 
4. 复制相关,如是否是slave,master地址、端口 
5. Hash相关设置 
6. 初始化命令表

如其中的保存机制中,服务器初始化策略为:

复制代码

// 1小时内1次更新
appendServerSaveParams(60*60,1);

// 5分钟内100次更新
appendServerSaveParams(300,100);

// 1分钟内10000次更新
appendServerSaveParams(60,10000);

复制代码

如果在启动服务器时,指定了配置文件,则会在下面的“加载配置文件”步骤中,根据配置文件内容,更改其中的某些服务器配置。

加载配置文件

如果指定了配置文件,Redis使用loadServerConfig()函数加载配置文件,使用标准I/O库打开配置文件,循环读取每一行然后覆盖上一步进行的默认配置。

需要注意的是,下载Redis后代码包中有一个默认配置文件,如果启动Redis服务器时,不指定配置文件,Redis不会使用这个默认文件的配置,而是使用上一步“初始化全局服务器配置”中的配置。在默认配置文件中提供的配置项与上一步默认初始化的配置有些事不一样的,所以如果没有指定配置文件,千万不能认为Redis的行为会按照默认配置文件进行,最典型的一个例子,在默认配置文件中的数据保存策略是:

复制代码

# 15分钟内1次更新
save 900 1

# 5分钟内100次更新
save 300 10

# 1分钟内10000次更新
save 60 10000

复制代码

而默认初始化的全局配置中数据保存策略:appendServerSaveParams的配置项

初始化服务器

初始化服务器的工作在initServer()函数中,主要是完成前面未完成的工作,继续对server变量初始化,如设置信号处理、创建clients、slaves列表,创建Pub/Sub通道列表,同时还会创建共享对象:

shared.crlf = createObject(REDIS_STRING,sdsnew("\r\n"));
shared.ok = createObject(REDIS_STRING,sdsnew("+OK\r\n"));
shared.err = createObject(REDIS_STRING,sdsnew("-ERR\r\n"));
shared.emptybulk = createObject(REDIS_STRING,sdsnew("$0\r\n\r\n"));

最后,如果启用了虚拟内存机制,还需要初始化虚拟内存相关,如Thread I/O等。

加载数据库

在完成了上面的所有的初始化工作之后,Redis开始加载数据到内存中,如果启用了appendonly了,则Redis从appendfile加载数据,否则就从dbfile加载数据

1. 从appendfile中加载数据:loadAppendOnlyFile()函数

在此之前,我们先来看一下appendfile里面保存了什么,如我执行了下面两条命令(记得在配置文件中开启appendonly):

redis> SET mykey001 myvalue001
OK
redis> GET mykey001
"myvalue001"

使用cat命令查看appendonly.aof的内容:

复制代码

$ cat appendonly.aof
*2
$6
SELECT
$1
0
*3
$3
SET
$8
mykey001
$10
myvalue001

复制代码

在appendonly.aof文件中保存的正是从客户端发过来的请求命令,还可以看到对于GET命令,并没有保存。

既然appendonly.aof中保存了所有写入数据的请求命令,那么在加载数据的时候只要重新执行一遍这些命令即可。

事实上Redis也正是这么做的,在开始加载之前暂时关闭appendonly,然后Redis创建一个假的Redis客户端。

然后读取appendonly.aof文件中的命令,在假的Redis客户端上下文中执行,同时服务器也不对该客户端做任何应答。

如果加载过程中物理内存不够用,并且Redis开启了VM,则还需要处理swap操作,最后加载完成后重新设置appendonly标志。

2. 从dbfile中加载数据:rdbLoad()函数

如果Redis没有开启appendonly,就需要从数据库文件中加载数据到内存,基本步骤如下:

a. 处理SELECT命令,即选择数据库 
b. 读取key 
c. 读取value 
d. 检测key是否过期 
e. 添加新的对象到哈希表 
f. 设置过期时间(如果需要) 
g. 如果开启了VM,处理swap操作

网络监听

在完成了初始化配置和数据加载后,Redis启动监听。Redis的网络库没有使用libevent或者libev,而是作者自己实现的一个非常轻量级的库(主要实现在ae.c文件中)

 

然而回到我的问题上,如果数据库中数据已经放入了32G的数据,在启动redis时加载数据库这部分必定会相当相当慢,而且涉及到宕机的问题(物理内存到达峰值)

这时可能单台redis很难解决这个问题,而应该考虑集群。

5、参考资料

http://blog.csdn.net/jackpk/article/details/30073097

http://www.jb51.net/article/65264.htm

 收藏

 分享

千万不要再乱喝蜂蜜了!知情人士亲赴深山,发现惊人真相!邱拉 · 顶新

redis 持久化详解,RDBAOF是什么?他们优缺点是什么?运行流程是什么?

 4153

Redis支持RDB和AOF两种持久化机制,持久化功能有效地避免因进程退出造成的数据丢失问题,当下次重启时利用之前持久化文件即可实现数据恢复。 1. RDB是什么     RDB持...来自: 陈新明博客

Redis源码剖析和注释(十七)--- RDB持久化机制

 3117

Redis RDB持久化机制1. RDB的介绍因为Redis是内存数据库,因此将数据存储在内存中,如果一旦服务器进程退出,服务器中的数据库状态就会消失不见,为了解决这个问题,Redis提供了两种持久化...来自: men_wen的博客

Redis持久化RDBAOF配置和对比

 588

1. 前言 Redis的高性能是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失, 需要将数据从内存中同步到硬盘中,这一过程就是持久化。 Redis支持两种方式的...来自: 琦彦

 

Redis持久化-RDB

 4414

Redis优秀的性能是由于其将所有的数据都存储在内存中,同样memcached也是这样做的,但是为什么Redis能够脱颖而出呢,很大程度上是因为Redis有出色的持久化机制,能够保证服务器重启后,数据...来自: 胸无大志,枉活一世

Redis配置文件redis.conf 详解--aof&rdb

 4074

Redis配置文件redis.conf 详解 1.基本配置 内存单位的表示 # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000...来自: senlin1202的博客

数据库随笔1-RDB概述

 719

做应用开发的童鞋,关系数据库RDB肯定接触不少,天天闹腾SQL,本文主要以InnoDB和Oracle举例, 就是这张经典的图,把RDB的主要组件都描述出来了:  查询编译器,把SQL语言,经过语法树...来自: 柳云龙

RDBAOF区别和联系

 5344

RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照 优势  RDB 是一个非常紧凑(compact)的文件,它保存了 Redis 在某个时间点上的数据集。 这种文件非常适合用...来自: 发现-成长

下载 

rdb打包解包3.9(更新)

11-19

需要安装 .NET 4.0 提醒: 1.本工具是根据作者对RDB文件结构进行黑箱分析推测出来的,并无事实依据.经过测试解包后再打包的文件与源文件大小相同,但是内容不同,经过测试可以替换正常使用.但是请

 

redis的 rdb 和 aof 持久化区别

 2.9万

redis的 rdb 和 aof 持久化的区别 url: http://ptc.35.com/?p=275 aof,rdb是两种 redis持久化的机制。用于crash后,redis的恢复。 r...来自: jackpk的专栏

文章热词

神经网络过拟合解决方式 蒙特卡罗on-policy off-policy区别 图像超分辨率重建模块区别 机器学习 机器学习课程

相关热词

c# 模型数据库持久化 c++ 持久化框架 android 持久化 登录 c++pub redis +redis c# 人工智能课程考察方式 人工智能学习方式

RDBAOF持久化对比

 91

Redis提供了RDB持久化和AOF持久化,本篇文章中将会对这两种机制进行一些对比 (一)RDB机制的优势和略施 RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘。也是默认的持久...来自: 热气腾腾地活着

九日王朝关注

九日王朝

 

186篇文章

排名:7000+

 

锋神丶关注

锋神丶

 

118篇文章

排名:千里之外

 

jjavaboy关注

jjavaboy

 

218篇文章

排名:千里之外

 

yyqq188关注

yyqq188

 

87篇文章

排名:千里之外

 

CSDN真无耻,必须要登录才能看全文

 1.7万

CSDN真无耻,必须要登录才能看全文–20171026来自: longwind09,多容寡欲,千里江河

Redis 优缺点

 1.9万

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守...来自: public

CVTE软件技术支持面试(已拿offer)

 3547

        两分钟的自我介绍时间好像没到面试官就打断了我开始问问题。1、staic的用法2、数组和指针的区别和优缺点     下面有两篇较好的解答:      http://blog.csdn.n...来自: cainaiolin的博客

 

记在拿到cvte的offer之后

 9995

很久没有更新博客了,因为之前忙着找工作,然后很多笔记老是翻博客,感觉没有效率,于是就写在文档里,那样看起来更方便。 这边博客记录下最近我找工作的时间所遇到的坑吧。 首先阿里、腾讯内推简历被刷,相当不爽...来自: 小武思密达的专栏

cvte笔试有感

 4163

人生就像钟表,可以回到起点,却已不是昨天!来自: koala的学习之路

redis 优缺点 使用场景

 1.1万

http://blog.csdn.net/guchuanyun111/article/details/52064870来自: u013322876的博客

从技术走向IT管理

 889

IT人的管理思想要从做事的思想开始改变,沟通是管理必备的技能来自: kissguan的小屋

【面试心得】2017CVTE春招面试笔试心得(失败的体会)

 1.1万

博主投的Android岗位今早上九点半左右接到 CVTE 面试官的电话,(我醒来了不过没起床,在看知乎),接到电话对方很客气,问我有木有时间,我说现在有点事(还没起床),对方就问我什么时候有空,我说十...来自: 小鼠标的博客

 

[redisrdb-dump.rdb

 391

一、描述 rdb(redis databses) redis的其中一个持久化数据方式(默认),是rdb模式,简单说就是会再一定的触发条件下,会启动子进程生成dump.rdb(快照文件) ...来自: gonaYet的博客

腾讯QQ2018版RDB资源文件提取工具,内附源码,vs2010工程

下载

08-10

腾讯QQ2018版RDB资源文件提取工具,内附源码,vs2010工程 可以自己编译。命令行工具。 命令如下: rdbext.exe xxx.rdb

redis 使用rdb文件恢复数据

 512

注意两个配置参数: appendonly no dbfilename dump.rdb dir /var/lib/redis appendonly 设置成no,redis启动时会把/var/lib...来自: xiojing的博客

RedisRDB持久化测试(RDB默认是启动的)

 549

1.Snapshotting: 缺省情况下,Redis会将数据集的快照dump到dump.rdb文件中。此外,我们也可以通过配置文件来修改Redis服务器dump快照的频率,在打开redis.con...来自: Howinfun的博客

Redis自动创建RDB

 311

一 说明 举个例子,设置 save 300 10 表示“如果距离上一次创建RDB文件已经过去了300秒,并且服务器的所有数据库总共已经发生了不少于10次修改,那么系统自动执行BGSAVE命令”。...来自: 实践求真知

千万不要再乱喝蜂蜜了!知情人士亲赴深山,发现惊人真相!邱拉 · 顶新

redis 两种持久化方式分析---rdb/aof

 746

redis支持两种持久化的方式,可以单独使用或者结合起来使用      第一种:RDB方式(redis默认的持久化方式)  第二种:AOF方式      一、RDB       rdb方式...来自: preamble_1的博客

Redis持久化RDBAOF

 5117

Redis强大的功能很大部分是由于他把数据缓存在内存中,为了使Redis在重启的时候,数据不丢失,就需要已某种方式把数据持久化到磁盘中。Redis持久化的方式有俩种,RDB和AOF。RDB:快照方式,...来自: 打不死的小强

Redis 持久化RDBAOF原理

 1663

Redis持久化是如何工作的?持久化就是把数据放到断电后数据不会丢失的设备中,也就是我们通常理解的磁盘上。数据库在进行写操作时,有以下五个过程: 1) 客户端往服务器发送写操作(数据在客户端的内存中)...来自: Heqianqian的博客

redis持久化原理详解

 5444

一、 Redis 提供了不同级别的持久化方式: Redis提供了两种方式对数据进行持久化,分别是RDB和AOF。  RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储。  AOF持久化...来自: wolf

redis-AOF

 237

AOF 持久化 redis来自: 上千主上-贝库塔

千万不要再乱喝蜂蜜了,美女亲赴深山,揭露背后惊人黑幕!聚优 · 顶新

redis学习】 RDBAOF两种持久化机制的介绍及优缺点

 144

1、RDB和AOF两种持久化机制的介绍 RDB持久化机制,对redis中的数据执行周期性的持久化 AOF机制对每条写入命令作为日志,以append-only的模式写入一个日志文件中,在redis重...来自: 攻城狮不是猫

Redis(一)持久化:快照和AOF

 943

Redis持久化提供两种方式:快照和AOF。来自: jjavaboy的专栏

redis RDBAOF两种持久化策略分析

 229

持久化主要是做灾难恢复,数据恢复,当然也可以归类到高可用的一个环节中去。 如果把redis的持久化做好,备份和恢复方案做到企业级的程度,那么即使你的redis故障了,也可以通过备份数据,快速恢复,立...来自: yyqq188的博客

Redis持久化和数据恢复的坑

 814

redis提供了rdb和aof两种持久化机制来自: qq_30038111的博客

Redis-4.0以后的混合持久化

 581

Redis 当前支持 aof 和 rdb 这两种持久化方式。 有些对 Redis 不是特别的了解同学误解持久化是读写数据也会到磁盘。这里辟谣一下:Redis 读写都是全内存的, 持久化数据只是作为磁盘...来自: qq_36318234的博客

重大通知!1月起,杭州上班族可正式在职申读985/211本科尚德机构 · 顶新

Redis持久化的取舍和选择:RDBAOF

 266

Redis持久化的取舍和选择持久化的作用 什么是持久化 redis将内存中的数据保存到磁盘持久化实现方式快照 mysql dump, Redis RDB 写日志 mysql Binlog, H...来自: kayfen

Redis持久化存储(AOFRDB两种模式)

 3万

cache-only即只做为“缓存”服务,不持久数据,数据在服务终止后将消失,此模式下也将不存在“数据恢复”的手段,是一种安全性低/效率高/容易扩展的方式; persistence即为内存中的数据...来自: 不能说的秘密的博客

Redis持久化----RDBAOF 的区别

 3450

关于Redis说点什么,目前都是使用Redis作为数据缓存,缓存的目标主要是那些需要经常访问的数据,或计算复杂而耗时的数据。缓存的效果就是减少了数据库读的次数,减少了复杂数据的计算次数,从而提高了服务...来自: ljheee的博客

Redisrdb 和aof 持久化区别

 254

aof,rdb是两种 redis持久化的机制。用于crash后,redis的恢复。 db的特性如下: Code: fork一个进程,遍历hash table,利用copy on write,...来自: u014684364的博客

4、Redis的小功能大用处

 679

前言1、慢查询分析所谓的慢查询日志,就是在命令的执行前后计算每条命令的执行时间,当超过预设值,就将这条命令的相关信息记录下来,redis命令执行分为4个步奏,发送命令,命令排队,执行命令,返回结果,这...来自: HealerJean梦想博客

一个退役操盘手肺腑之言,写给无数正在亏钱的散户新普投研 · 燨燚

redis两种持久化策略

 1.4万

reids是一个key-value存储系统,为了保证效率,缓存在内存中,但是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,以保证数据的持久化。   所以:redis是一...来自: 那么好,

介绍Redis的各种用途以及使用场景

 4.7万

专注JavaWeb开发 2017-11-22 10:10:36 Redis 一、为什么使用 解决应用服务器的cpu和内存压力 减少io的读操作,减轻io的压力 关系型数据库的扩展性不强,难...来自: u011277123的博客

Redis AOFRDB内容解析

 614

AOF 解析 Append Only File 是一个文本文件,而且是dos格式的,dos格式…… 可以使用nodejs来解析AOF文件,将其格式化成redis的命令流 安装解析工具: c...来自: VincentQB的博客

redis快速的插入大量的数据

 4051

如何在服务启动的时候快速插入大量的  过亿的key value数据呢? 使用新的方式 : LUKE 以下为几种可能的方式:      1、逐条命令发送,命令的传输时间RTT很长,...来自: liwenbo_csu的博客

结合redis设计与实现的redis源码学习-12-RDB持久化rdb.h/rio.h)

 305

因为redis是一个内存数据库,他将自己的数据库状态存储在内存中,一旦服务器锦城推出,服务器中的数据库状态也会消失不见。为了解决这个问题,redis提供了RDB持久化功能,这个功能可以将redis在内...来自: YangGangAVA的博客

rdb存储引擎

 133

介绍了rdb存储引擎相关实现来自: shangshengshi的博客

Redis存储方式RDBAOF介绍及持久化的重要性

 797

前言redis可以干很多事情,我们这里的背景是将redis作为缓存服务器还讨论的。 如果部署了一个redis,主从也好,cluster也罢,我将一些数据存储在它上面,如果没有持久化的话,redis只会...来自: 在路上

redis 持久化的两种方式和恢复

 1828

一、Redis持久化的方式有两种:     1.RDB:对内存中数据库状态进行快照     2.AOF:把每条写命令都写入文件,类似于mysql的binlog日志        RDB方式:将...来自: 阿文大大

Redis:RDB重写和AOF重写

 1124

一.RDB 1.RDB文件用于保存和还原Rdix服务器所有数据库中的所有键值对数据。 2.SAVE命令由服务器进程直接执行保存操作,会阻塞服务器。 3.BGSAVE命令由子进程执行保存操作,不会...来自: 学无止境

Redis的2种持久化方式Snapshot(RDB)和Append-only file(AOF)的配置和对比

 3213

- Redis有2种持久化的方式,一种是Snapshot,就是保存某一时刻的数据在磁盘;另外一种是append-only file(AOF),就是以追加的方式记录所有写操作的命令到磁盘文件里面。 1...来自: 煉心的博客

重大通知!1月起,杭州上班族可正式在职申读985/211本科尚德机构 · 顶新

Redis缓存机制,快照持久化AOF持久化

 185

持久化功能redis为了内部数据的安全考虑,会把本身的数据以文件形式保存到硬盘中一份,在服务器重启之后会把硬盘中的数据恢复到内存(redis)的里边。数据保存到硬盘的过程就称为“持久化”效果redis...来自: qq_31479309的博客

RedisAOF持久化 对比RDB优缺点

 3088

Redis的AOF持久化策略是将发送到Redis服务端的每一条命令都记录下来,并且保存到硬盘中的AOF文件中,类似打日志文件,来一条命令就记录一条。 AOF设置 AOF文件的位置和RD...来自: helloveada的博客

很黄很暴力的十个网站

 127050

13岁的北京学生张某,在去年12月27日19时新闻联播一则关于净化网络视听的新闻里,接受采访时说的话激起了轩然大波:“上次我上网查资料,突然弹出来一个网页,很黄很暴力,我赶紧把它给关了。”这个片段被C...来自: Kinb_huangwei的专栏

【整理收集】那些神器级别的BT磁力搜索网站

 95521

对于我喜欢和常用的网站我会特别介绍一下的,其他大家自己看着办吧。 还有一点,一般专门的BT论坛会比这些搜索引擎收录快,发布站式的BT站也会比抓取的搜索引擎收录快。BT发布站我也会另外开的,这里偶尔带...来自: roslei的博客

webgl第六课-通过鼠标点击绘点

 5037

需要源码可以Q群:828202939 或者点击这里  希望可以和大家一起学习、一起进步!!纯手打!! 首先我们需要知道要绘制一个点,大致需要哪些步骤: 1.初始化着色器 2.获取attribut...来自: 谷子的博客

webgl第12课-图形的变换之平移

 4889

前面我们学习了一些点、三角形、矩形等一些基础的图形的绘制的方法 本节课开始我们开始学习对图形的......来自: 谷子的博客

webgl第13课-图形变换之旋转

 4438

上一节课我们学习了图形的变换之平移 这一节课我们将学习图形的变换之旋转 如果你学会了图形的平......来自: 谷子的博客

webgl第七课-鼠标分象限绘制不同颜色的点

 4820

需要源码可以Q群:828202939 或者点击这里  希望可以和大家一起学习、一起进步!!纯手打!! 书籍是PDF电子档,也在Q群里,所有的课程源代码在我上传的资源里面,本来想设置开源,好像不行! ...来自: 谷子的博客

史上最简单的 SpringCloud 教程 | 终章

 1292654

转载请标明出处: http://blog.csdn.net/forezp/article/details/70148833 本文出自方志朋的博客 错过了这一篇,你可能再也学不会 Sp...来自: 方志朋的专栏

webgl第九课-绘制多个顶点

 4737

上一课我们说到一些绘制多个顶点的基础知识,这节课我们来看看绘制多个顶点的代码是怎么实现的   ......来自: 谷子的博客

webgl第五课-绘制一个点的另外一种写法

 4746

需要源码可以Q群:828202939 或者点击这里  希望可以和大家一起学习、一起进步!!纯手打!!                                                ...来自: 谷子的博客

pyCharm最新2019激活码

 1352591

本教程对jetbrains全系列可用例:IDEA、WebStorm、phpstorm、clion等 因公司的需求,需要做一个爬取最近上映的电影、列车号、航班号、机场、车站等信息,所以需要我做一个爬虫...来自: 昌昌

webstorm 2018 激活破解方法大全

 733586

webstorm 作为最近最火的前端开发工具,也确实对得起那个价格,但是秉着勤俭节约的传统美德,我们肯定是能省则省啊。 方法一:(更新时间:2018/4/8)v3.3 注册时,在打开的Lice...来自: 唐大帅的编程之路

“戏”说设计模式——外观(门面)模式

 19194

首先请出今天的主人公——“黑旋风”李逵 李逵:“我是不是萌萌哒?”  一部《水浒传》说尽了一群英雄好汉的悲欢离合!经典著作的水浒,含蓄地概括了中国各个朝代的变迁和演变,客观地揭露了顽固的中国伦...来自: 青衣煮茶

threeJS后处理-星空

 18915

需要电子档书籍或者源码可以Q群:828202939   希望可以和大家一起学习、一起进步!! 如有错别字或有理解不到位的地方,可以留言或者加微信15250969798,博主会及时修改!!!!! 最...来自: 谷子的博客

颈椎病怎么能治好,看我用Python对接

 92835

盘点现代社会中年轻人常见病例,很显然“颈椎病”一定是排在第一的。年轻人长期伏案工作、长期面对电脑、长期低头玩手机等,这些行为都是导致颈椎病的发病率急剧升高的最基本原因。但是,还有一个危险因素就潜伏在我...来自: john_dung的博客

git的使用和学习(二)github远程库的连接和同步操作

 23378

1.github远程库的连接 打开github官网github. 登录之后 点击这个 然后 输入名字点击创建就会跳转到这个界面 我们用红色箭头指的现有的库 然后打开git ...来自: 齐码闯天涯

(二)MyBatis核心组件(配图详解&代码实现)

 31316

MyBatis的核心组件分为4个部分 SqlSessionFactoryBuilder(构造器):根据xml或java代码生成SqlSessionFactory。 SqlSession...来自: 青衣煮茶

webgl第21课-复合动画-button控制三角形的旋转速度

 11835

需要电子档书籍可以Q群:828202939   希望可以和大家一起学习、一起进步!!纯手打!! 上一节课我们学习了复合变换动画,是先给它们加入了缩放和平移,然后恒定速度的三角形旋转动画案例 这一...来自: 谷子的博客

整理了10个干净、好用的BT、磁力链搜索网站给大家

 243923

现在越来越流行在线看视频了,但是对于我得收藏癖爱好者,还是希望可以有比较好的资源网站的,尤其是种子、磁力链网站。所以就整理了一份干净、好用的TOP10出来: 先推荐一个下载磁力链的工具: 马...来自: YXAPP的技术分享

2019,不再成为2018!

 2157

此时,2019年1月4号,上午9:57。 突然看到了新年flag征文活动,不妨一起来展望一下吧。 不做积极废人。 18年,网络流行了一个新的词汇 “积极废人”。 不知为什么,在初次看到这个词汇...来自: 青春不作伴

Webstorm 最新激活码 多种破解方式(持续更新...)

 120851

方法:License server 注册 安装完成,打开Webstorm,在弹出的License Activation窗口中选择“License server”,在输入框输入下面的网址:  htt...来自: 老妖儿的博客

走进信息隐藏的世界,全面讲解信息隐藏——第1节:信息隐藏技术简介

 1394

走进信息隐藏的世界,全面讲解信息隐藏——第1节:信息隐藏技术简介 专栏题记:奥斯卡优秀电影《美丽心灵》里面有讲述一位优秀数学家为政府破译敌国通讯的情节,如电影所讲,现实中也有着类似的情节,在我们的生...来自: qq_26464039的博客

BAT缩招,AI跻身2019年最赚钱职业榜首!(附薪酬表)

 8298

临近年底,互联网正在经历寒冬,不少公司出现了裁员新闻,也有很多人纷纷转型、跳槽。那么,2019年 IT领域内,什么样的工作比较好? 最近美国薪酬统计网站PayScale发布了一份报告,给出了答案。他...来自: CSDN学院

webgl第14课-矩阵变换之旋转

 5033

上一节课我们学习了图形的变换之旋转 这一节课我们将学习矩阵的变换之旋转 对于简单的变换,我们......来自: 谷子的博客

Json解析-和风天气

 23413

接口怎么调用呢,横简单 这里说一下怎么转json为对象 老规矩看转载 教学文章 有啥疑问可以问我,这文章里面还有个很好用的工具 ...来自: 齐码闯天涯

webgl第20课-复合变换动画-旋转+平移的三角形

 9145

需要电子档书籍可以Q群:828202939   希望可以和大家一起学习、一起进步!!纯手打!! 上一节课我们学习了动画的基础,是一个不断旋转的三角形 这一节课我们将学习复合变换动画,以此来巩固前面...来自: 谷子的博客

Proxyee-down的下载与安装教程

 174131

Proxyee-down是monkeyWie在Github上的一个开源项目,向作者致敬。 最新版的Proxyee-down为3.12(2018.10更新),因为作者在3.x后的版本中并未发布exe版...来自: shadandeajian的博客

2018最好用百度云破解版,百度网盘不限速下载,教你如何解决百度网盘限速的方法。亲测完美使用

 242606

百度网盘不限速 点击下载 提取码:jsk0 百度网盘不限速 点击下载 提取码:jsk0 对于大多数人来说,每次在百度网盘下载东西的时候总会被限速,如果不想被限速就要充值百度网盘的SVIP,...来自: qq_41925894的博客

Android 热修复BugIy(从官网项目开始,初步学习并了解它)

 22380

第一步上github导项目 BugIy热更新-项目 BugIy官网热更新-教材 如果你想深入了解BugIy我推荐你从官网学习,但是和我一样只为了初步了解一下怎么使用可以看看我的操作流程 下载好...来自: 齐码闯天涯

项目部分展示-3D在线试衣系统解决方案

 24298

郑重声明:发布此博客纯属技术展示和交流!未得本人同意,禁止转载!禁止商业目的! 需要电子档书籍可以Q群:828202939   希望可以和大家一起学习、一起进步!! 部分项目展示:  因为转化...来自: 谷子的博客

安装和激活Office 2019

 70521

有条件请支持正版!相比费尽力气找一个可能不太安全的激活工具,直接买随时随地更新的Office 365确实是最好的办法。暂时没有经济实力的,可以看看这篇文章。 下载OTP工具 首先到Office Too...来自: 过了即是客

军事理论课答案(西安交大版)

 1235776

1.1 1 【单选题】我国陆地领土面积排名世界第几?(C) A、1 B、2 C、3 D、4 2 【单选题】以下哪个国家不属于金砖五国(BRICS)?(B) A、中国 B、日本 C...来自: ling_wang的博客

office2016永久免费激活码(office2016密钥)

 821087

Microsoft Toolkit(Win10激活工具/Office2016激活工具) V2.6B4 绿色版人气:42008 下载 Microsoft Toolkit(Win10激活工具/...来自: 老K的博客

webgl第15课-矩阵变换之平移

 4832

上一节课我们学习了矩阵的变换之旋转 这一节课我们将学习矩阵的变换之平移 在这之前,你得了解前......来自: 谷子的博客

FFmpeg详解及常用命令使用

 39882

FFMPEG简介 FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器,提供了录制、转换以及流化音视频的完整解决方案。市面上使...来自: qq_26464039的博客

日志框架NLog简单配置使用

 50215

NLog日志管理工具 一、获得NLog 这里介绍最简单的获得方式 1.管理NuGet程序包 2.在打开页面中搜索NLog并进行安装,安装NLog和NLog.Config 3.安装成功后我们可以看到...来自: Maybe_ch的博客

hive建表的标准格式及其建表属性详解1

 15673

         Hive建表是学习使用hive的第一步,然后才能基于表对hive数据仓库进行操作。学习建表前,首先要知道hive表的构建属性 ,知道哪些属性是固定的,哪些属性是可以定制的等等。 一...来自: 牛大财有大才

DirectX修复工具增强版

 1724511

最后更新:2018-12-20 DirectX修复工具最新版:DirectX Repair V3.8 增强版  NEW! 版本号:V3.8.0.11638 大小: 107MB/7z格式压缩,18...来自: VBcom的专栏

抖音短视频去水印解析下载教程

 395321

前言 抖音短视频APP里虽然有保存视频的按钮,但这种方式保存的视频右下角有抖音的水印,并且这种方式不适用于电脑。 所以,写这篇文章来分享如何下载没有水印的抖音视频到本地,此方法适用于电脑和...来自: Spring的博客

“戏”说设计模式——责任链模式

 15582

首先请出今天的主人公——“齐天大圣”孙悟空 原创文章,禁止转载https://blog.csdn.net/wfy2695766757   小时候每到假期,电视上就会播出大家耳熟能详的“西游记” ...来自: 青衣煮茶

webgl第16课-矩阵变换之缩放

 4738

上一节课我们学习了矩阵的变换之平移 这一节课我们将学习矩阵的变换之缩放 在这之前,你得了解前......来自: 谷子的博客

浮生忆梦

关注

原创

38

粉丝

7

喜欢

16

评论

13

等级:

 

访问:

 

9万+

积分:

 

1269

排名:

 

4万+

 

最新文章

个人分类

展开

归档

展开

热门文章

最新评论

 

联系我们

微信客服

微信客服

QQ客服

QQ客服

kefu@csdn.netQQ客服

客服论坛400-660-0108

工作时间 8:30-22:00

关于我们招聘广告服务 网站地图

百度提供站内搜索 京ICP证09002463号

©1999-2019 江苏乐知网络技术有限公司

江苏知之为计算机有限公司 北京创新乐知信息技术有限公司版权所有

经营性网站备案信息网络110报警服务

北京互联网违法和不良信息举报中心

中国互联网举报中心

2019人工智能薪资趋势

Python实战技巧

数据库沙龙

2018 年度课程榜单

 

登录

注册

 

  • 6

  • 1

  •  
  •  
  •  
  •  

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值