Redis详解---三分钟带你认识Redis!!

一、什么是Redis?
Redis是用 c 语言开发的一个开源的高性能键值对(key-value)数据库,Redis 是目前一个非常优秀的 key-value 存储系统,它支持存储的value 类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set 有序集合)和 hash(哈希类型)。

二、Redis应用场景
缓存(数据查询、短连接、新闻内容、商品内容等)、最多使用;
分布式集群架构中的 session 分离;
聊天室的在线好友列表;
任务队列;(秒杀、抢购、12306等等)
应用排行榜;
网站访问统计;
数据过期处理;(可以精确到毫秒)

三、Redis的特性
1、redis 数据访问速度快(数据在内存中);
2、redis 有数据持久化机制;(两种持久化,下文会详解)
3、redis 支持集群模式,容量可以线性扩展;(从3.0.0版本开始支持集群模式)
4、redis 相比其他缓存工具(ehcach/memcached),有一个鲜明的优势:支持丰富的数据结构;

四、Redis持久化
两种持久化:
1)、Redis DataBase(简称 RDB)
①执行机制:快照,直接将databases中的key-value的二进制形式存储在了rdb文件中
②优点:性能较高(因为是快照,且执行频率比aof低,而且rdb文件中直接存储的是key-values的二进制形式,对于恢复数据也快)
③使用单独子进程来进行持久化,主进程不会进行任何IO操作,保证了redis的高性能
④缺点:在save配置条件之间若发生宕机,此间的数据会丢失
⑤RDB是间隔一段时间进行持久化,如果持久化之间redis发生故障,会发生数据丢失。所以这种方式更适合数据要求不严谨的时候

2)Append-only file(简称 AOF)
①执行机制:将对数据的每一条修改命令追加到aof文件
②优点:数据不容易丢失
③可以保持更高的数据完整性,如果设置追加file的时间是1s,如果redis发生故障,最多会丢失1s的数据;且如果日志写入不完整支持redis-check-aof来进行日志修复;AOF文件没被rewrite之前(文件过大时会对命令进行合并重写),可以删除其中的某些命令(比如误操作的flushall)
④缺点:性能较低(每一条修改操作都要追加到aof文件,执行频率较RDB要高,而且aof文件中存储的是命令,对于恢复数据来讲需要逐行执行命令,所以恢复慢)
⑤AOF文件比RDB文件大,且恢复速度慢

尖叫提示:
如果既配置了RDB,又配置了AOF,则在进行数据持久化的时候,都会进行,但是在根据文件恢复数据的时候,以AOF文件为准,RDB文件作废!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值