<<redis设计和实现>>读书笔记
2016-11-24 23:14
337 查看
redis如何实现主从同步的高效率??
redis的备份包括保存数据的二进制和命令的同步,第一种方式相当于把当前内存的数据都保存下来,而第二种相当于把所有的命令都保存下来然后进行保存,恢复的时候把命令读取出来进行恢复
数据的备份方式:
主从复制的同步有一个命令数据的同步文本,然后利用两个不同服务器的偏移量来进行进行同步,避免每次都是全部同步(并非会保存所有的命令数据,而是会有一个缓冲区(比如1M,比如2M),如果偏移量在这个缓冲区里面则是会部分同步)
redis的备份包括保存数据的二进制和命令的同步,第一种方式相当于把当前内存的数据都保存下来,而第二种相当于把所有的命令都保存下来然后进行保存,恢复的时候把命令读取出来进行恢复
数据的备份方式:
使用进程内存复制,当要数据备份的时候,fork一个进程,然后保存fork进程的数据,这样不会阻塞主进程(当数据保存完毕后,再继续保存后续的数据)
相关文章推荐
- <<Linux内核的设计与实现>>读书笔记(三)-Linux的进程
- <<Effective C++>>读书笔记4: 设计与声明
- <<App研发录:架构设计、Crash分析和竞品技术分析>>读书笔记
- <<操作系统精髓与设计原理>>读书笔记(一) 并发性:互斥与同步(1)
- <<Effective c++>>读书笔记---条款19:设计class犹如设计type
- 《Effective C#》读书笔记——条目25:用事件模式实现通知<使用C#表达设计>
- <<Android源码设计模式解析与实战>>读书笔记----- Android NDK开发学习
- <<Effective OC>>读书笔记 --- 第二十四条 将类的实现分散在不同文件中,便于管理
- <<Linux内核设计与实现>>读书笔际(五)-系统调用
- <<C++的设计与演化>>读书笔记(四)
- <<C++ Qt设计模式>>读书笔记一:第七章 库与设计模式
- 《Effective C#》读书笔记——条目22:通过定义并实现接口替代继承<使用C#表达设计>
- 九周任务二:定义Time类中的<<和>>运算符重载,实现时间的输入输出
- <<cocoa设计模式>>
- C++第九周【任务一】定义Complex类中的<<和>>运算符的重载,实现输入和输出
- 《第九周任务二》定义Time类中的<<和>>运算符的重载,实现时间输入输出,改造源程序中对运算结果的显示方式,使程序读起来更自然
- php+js+mysql设计的仿webQQ-<5>IM窗体的实现
- php+js+mysql设计的仿webQQ-<5>IM窗体的实现
- 第九周任务一(定义Complex类中的<<和>>运算符的重载,实现输入和输出)
- 第九周任务二之定义Time类中的<<和>>运算符重载,实现时间的输入输出