
Redis
文章平均质量分 71
Redis深入学习
阿木Coding
追求无止境
展开
-
聊一聊Redis的RDB快照
前面我们学习了Redis的AOF日志,我们知道通过AOF在进行数据恢复时需要将操作日志全都执行一遍,如果操作很多,那么Redis就会恢复的很慢。那有没有一种既可靠有快速的方法呢,今天我们聊一聊Redis的RDB快照。顾名思义快照就是将内存中的数据全都记录到磁盘中,但是同样的如果给内存的全量数据做快照,把它们全部写入磁盘也会花费很多时间。 Redis的单线程模型就意味着我们需要尽量避免所有阻塞主线程的操作,在Redis中提供了两个命令来生成RDB快照:有一个问题我们在创建快照的时候能修改数据吗,如果修改了那么原创 2022-06-23 20:17:58 · 362 阅读 · 0 评论 -
聊一聊Redis的AOF日志
日志是任何系统或者软件中必不可少的,同样在Redis中AOF日志也是Redis用来持久化的重要手段之一。我们比较熟悉的MySQL中redo log用到了WAL(Write-Ahead Logging)技术,它是先写日志,再写磁盘,相比较而言,在Redis中与其相反,是后写日志。 在Redis中AOF日志的实现都是先写命令,再记录日志,为什么要先执行命令再记录日志呢,而不是像传统的数据库日志。 后写日志的方式,就是先让系统执行命令,只有命令执行成功,才会被记录到日志中,否则直接向客户端报错,这样也就避免了日原创 2022-06-20 18:53:15 · 245 阅读 · 0 评论 -
Redis的单线程模型
我们在学习Redis的过程中都说Redis快,redis是单线程的,但是我们有没有想过单线程的Redis为什么会这么快呢? 确实,Redis在6.0之前都是单线程模型,这主要指的是Redis的网络IO和键值对的读写都是由一个线程来完成的,这也是Redis提供键值存储服务的主要流程。但是相对于Redis中其他的功能,比如持久化、集群等确是由额外的线程执行的。相比较单线程,我们经常会听到一个说法,为了提高性能和效率,使用多线程可以增加系统吞吐率、增加系统的扩展性。的确在合理分配资源的情况下,可以增加系统中处理请原创 2022-06-19 14:58:48 · 201 阅读 · 0 评论 -
Redis真的没有慢操作吗
Redis的底层数据结构原创 2022-06-19 12:02:17 · 148 阅读 · 0 评论