Redis用得很溜,了解过它用的是什么协议吗?

本文探讨Redis的两种持久化方式RDB和AOF,包括它们的优缺点。RDB通过快照实现,适合备份,但不实时;AOF记录每次写命令,实时性好。此外,文章介绍了Redis使用的RESP协议,它是Redis客户端与服务端通信的基础,具有简单、快速解析和可读性。读者将了解到如何使用telnet查看原始响应并理解其规则。
摘要由CSDN通过智能技术生成

Redis

Redis被广泛使用的一个很重要的原因是它的高性能。因此我们必须要重视所有可能影响Redis性能的因素、机制以及应对方案。

有个小伙伴面试回来说面试官问了他一些 Redis 问题,但是他好像没有回答上来。

我说,你 Redis 不是用的很溜吗,什么问题难住你了。

他说,事情是这样的,刚开始,问了一些基础的问题,比如 Redis 的几种基本数据类型和使用场景,以及主从复制和集群的一些问题,这些都还好。

然后问 Redis 的两种持久化方式,我说与 RDB 和 AOF 两种方式,RDB 数据文件小,恢复速度快,但是对性能有影响,而且不适合实时存储。而 AOF 是现在最常用的持久化方式,它的一大优点就是实时性,并且对 Redis 半身性能影响最小。

那面试又问了,你知道 AOF 持久化之后的文件是什么格式吗?

答:好像就是文本文件吧?

好,文本文件,那你知道它有什么规则吗?或者说,它和 Redis 的协议有什么关系吗?

答:啊,这个,恩,不太清楚呢。

现在就来看一下 AOF 和 RESP 协议的关系:

  1. 从两种持久化方式说起。

  2. RESP 协议是什么

  3. 动手实现一个简单的协议解析命令行工具

先从持久化说起,虽然一提到 Redis,首先想到的就是缓存,但是 Redis 不仅仅是缓存这么简单,它的定位是内存型数据库,可以存储多种类型的数据结构,还可以当做简单消息队列使用。既然是数据库,持久化功能是必不可少的。

Redis 的两种持久化方式

Redis 提供了两种持久化方式,一种是 RDB 方式,另外一种是 AOF 方式,AOF 是目前比较流行的持久化方案。

RDB 方式

RDB持久化是通过快照的方式,在指定的时间间隔内将内存中的数据集快照写入磁盘。它以一种紧凑压缩的二进制文件的形式出现。可以将快照复制到其他服务器以创建相同数据的服务器副本,或者在重启服务器后恢复数据。RDB是Redis默认的持久化方式,也是早期版本的必须方案。

RDB 由下面几个参数控制。

 
# appendonly参数开启AOF持久化
appendonly yes

# AOF持久化的文件名,默认是appendonly.aof
appendfilename"appendonly.aof"

# AOF文件的保存位置和RDB文件的位置相同,都是通过dir参数设置的
dir ./

# 同步策略
# appendfsync always
appendfsync everysec
# append
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值