redis简单介绍以及 实现持久化 RDB AOF

Redis简单介绍:

redis是一种支持Key-Value等多种数据结构的存储系统。可用于会话缓存,消息队列(比如支付3,活动排行榜或计数)、事件发布或订阅,高速队列、商品列表评论列表等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化。

与memcached的区别

Redis是一个高级key-value数据库,跟memcached的区别在于:

  1. Redis数据可以持久化;(两者都是内存数据库)
  2. 支持的数据类型丰富;(包括字符串、hash、列表(List)、集合(Set)以及SortedSet);故而支持更丰富的数据操作
  3. Memcached使用简单的key-value存储,内存效率不如Redis采用的Hash结构做key-value存储(采用组合式的压缩,内存利用率较高)。
  4. Redis数据可以通过AOF恢复,支持数据的备份,即master-slave主从模式的数据备份。memcached挂掉之后数据不可恢复;
  5. 由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据时,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化,但是比起Memcached,还是稍有逊色。

Redis和Mencached的区别可以见该博客:https://blog.csdn.net/u011489043/article/details/78922390

Redis实现数据持久化的两种实现方式:

快照:RDB:指定的时间间隔内保存数据快照
仅附加文件:AOF:先把命令追加到操作日志的尾部,保存所有的历史操作(append only file)

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

在这里插入图片描述

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

在这里插入图片描述

常用配置

RDB持久化配置

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

AOF持久化配置

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

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

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

appendfsync no #从不同步。高效但是数据不会被持久化。
https://www.cnblogs.com/AndyAo/p/8135980.html

猜你喜欢

转载自blog.csdn.net/mulinsen77/article/details/86568146