Redis概述

redis:
定义:是用C语言开发的、开源的、高性能的键值对数据库,通过提供多种键值数据类型,来适应不同场景下的存储需求
支持的数据类型:字符串、列表、集合、有序集合、散列
速度:读的速度每秒11万次,写的速度每秒8万一千次
应用场景:缓存、聊天室的在线好友列表、任务队列(秒杀、抢购)、网站访问统计、数据过期处理、应用排行榜、分布式集群架构的session分离

redis特性
1.多数据库:一个redis可支持16个数据库,下标分别是0~15
2.支持事务:开启事务multi;提交exec;回滚discard

redis持久化
定义
redis的高性能是因为所有的数据都存储在了内存中,为了保证数据不丢失需要将内存中的数据同步到硬盘上,这个过程为持久化操作持久化方式
RDB:是默认支持的,不需要进行配置,在指定的时间间隔内将内存中的数据及快照写入磁盘。 一般应用在备份数据上。
AOF:以日志的形式记录服务器所处理的每个操作,在Redis服务器启动时会读取该日志文件来重新构建数据库,保证启动后的数据是完整的。 一般应用 在保证数据可靠性。
无持久化:可以通过配置来禁用Redis持久化的功能,这时可以认为Redis就是一个缓存的机制了。


RDB
优势:
1.redis数据库只包含一个文件,对于文件备份而言是非常完美的,一旦系统出现灾难性的故障是比较方便恢复的,定时配置。
2.可以将一个单独的文件压缩后转移到其他存储介质上 。如:拷贝到其他地方,恢复时使用就好。
3.性能最大化,redis开始持久化时,分叉出进程,由子进程完成持久化的工作
4.数据量很大时启动效率会很高
劣势
1.保证数据的高可用性,最大限度的避免数据的丢失,不建议使用RDB,定时持久化之前可能出现宕机的情况
2.子进程进行数据持久化,数据量非常庞大时,会出现服务器短暂的停止
配置
redis.conf

 

每多少秒有多少个key发生变化,进行一次持久化

 


AOF
优势:
1.安全
同步:
a.每秒同步:异步完成,效率高,一旦系统宕机,修改的数据丢失
b.每修改同步:同步持久化,每分钟发生的变化记录到磁盘中,效率低,安全
c.不同步
2.写入操作采用的是追加模式,出现宕机可以解决数据一致性的问题
3.日志过大,自动启动重写机制,不断将修改数据写入老的磁盘文件中,同时创建新的文件记录那些修改命令被执行了
4.非常清晰易于理解的日志文件记录所有修改操作
劣势
1.相同数量的数据集文件大
2.运行效率低于RDB
配置
appendonly yes 持久化方式为AOF,no持久化方式为RDB

 

appendonly.aof AOF方式下的命令日志

转载于:https://www.cnblogs.com/Zz-maker/p/10401060.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值