面试笔记1-redis
1、什么是RDB?
RDB实际上是Redis的一种数据持久化机制。它每隔一段时间就会把内存中的数据写入到磁盘中的临时文件,作为快照,宕机重启之后,就会把rdb文件读取到内存中去,就可以恢复数据。
2.备份和恢复
内存备份 -> 磁盘临时文件
临时文件 -> 恢复到内存
3.rdb优劣势
优势:
1.每隔一段时间备份,全量备份
2.恢复简单,可以远程传输
3.子进程备份的时候,父进程不会有io操作(不会有写入修改或删除操作),保证备份数据的完整性
4.相对AOF来说,大文件可以快速重启恢复
劣势:
1.发生故障时,有可能丢失数据
2.子进程所占用的内存比和父进程的一模一样,造成cpu的负担
3.由于定时全量备份是重量级操作,所以对实时备份就无法处理了。
4.RDB的位置
1.保存的位置,可以在redis.conf 中定义
dir /usr/local/redis/working
2.保存机制
save 秒数 更新操作次数
save 900 1
save 300 10
save 60 10000
解析:
如果1个缓存更新,则900秒之后备份
如果10个缓存更新,则300秒之后备份
如果60个缓存更新,则60秒之后备份
1.stop-writes-on-bgsave-error
yes: 如果save过程出错,则停止写操作
no:可能造成数据不一致
2.rdbcompression
yes:开启rdb压缩模式
no:关闭,会节约cpu损耗,但文件会比较大,道理同nginx
3.rdbchecksum
yes:使用CRC64算法校验,对rdb进行数据校验,有10%性能损耗
no:不校验
总结:RDB适合大量数据的恢复,但数据完整性和一致性会有不足。
面试笔记1-redis的更多相关文章
- GitHub标星125k!阿里技术官用3个月总结出的24万字Java面试笔记
最近收到一位粉丝的回馈! 这位粉丝已经成功入职阿里了小编很是羡慕啊! 今天就把这份30w字Java面试笔记给大家分享出来,说来也巧这份资料也是由一位阿里技术官整理出来的这算不算是"搬起石头砸 ...
- Java高级开发工程师面试笔记
最近在复习面试相关的知识点,然后做笔记,后期(大概在2018.02.01)会分享给大家,尽自己最大的努力做到最好,还希望到时候大家能给予建议和补充 ----------------2018.03.05 ...
- 笔记-数据库-redis
笔记-数据库-redis 1. redis简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 stri ...
- 杂文笔记《Redis在万亿级日访问量下的中断优化》
杂文笔记<Redis在万亿级日访问量下的中断优化> Redis在万亿级日访问量下的中断优化 https://mp.weixin.qq.com/s?__biz=MjM5ODI5Njc2MA= ...
- 金九银十跳槽高峰,面试必备之 Redis + MongoDB 常问80道面试题
前言 有着“金九银十”之称的招聘旺季已经开启,跳槽高峰期也如约而至. 本文为主要是 Redis + MongoDB 知识点的攻略,希望能帮助到大家. 内容较多,大家准备好耐心和瓜子矿泉水. Redis ...
- SpringBoot学习笔记:Redis缓存
SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括Stri ...
- redis相关笔记(三.redis设计与实现(笔记))
redis笔记一 redis笔记二 redis笔记三 1.数据结构 1.1.简单动态字符串: 其属性有int len:长度,int free:空闲长度,char[] bur:字符数组(内容) 获取字符 ...
- 《【面试突击】— Redis篇》--Redis都有哪些数据类型?分别在哪些场景下使用比较合适?
能坚持别人不能坚持的,才能拥有别人不能拥有的.关注编程大道公众号,让我们一同坚持心中所想,一起成长!! <[面试突击]— Redis篇>--Redis都有哪些数据类型?分别在哪些场景下使用 ...
- 《【面试突击】— Redis篇》-- Redis的线程模型了解吗?为啥单线程效率还这么高?
能坚持别人不能坚持的,才能拥有别人未曾拥有的.关注编程大道公众号,让我们一同坚持心中所想,一起成长!! <[面试突击]— Redis篇>-- Redis的线程模型了解吗?为啥单线程效率还这 ...
- 《【面试突击】— Redis篇》-- Redis的主从复制?哨兵机制?
能坚持别人不能坚持的,才能拥有别人未曾拥有的.关注左上角编程大道公众号,让我们一同坚持心中所想,一起成长!! <[面试突击]— Redis篇>-- Redis的主从复制?哨兵机制? 在这个 ...
随机推荐
- java中加号的用法
注意java中+号的使用 public class Add { public static void main(String[] args) { System.out.println(100+80); ...
- 说透 Kubernetes 监控系列 - 概述
本文作者孔飞,来自快猫星云团队,Kubernetes专家,Categraf 采集器核心研发工程师 云原生包含了开源软件.云计算和应用架构的元素.云计算解决开源软件的运行门槛问题,同时降低了运维成本和基 ...
- javascript计算器
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- [深度学习] tf.keras入门1-基本函数介绍
目录 构建一个简单的模型 序贯(Sequential)模型 网络层的构造 模型训练和参数评价 模型训练 模型的训练 tf.data的数据集 模型评估和预测 基本模型的建立 网络层模型 模型子类函数构建 ...
- python模块(module)
目录 模块化(module)程序设计理念 模块和包概念的进化史 标准库模块(standard library) 为什么需要模块化编程 模块化编程的流 模块的 API 和功能描述要点 模块的创建和测试代 ...
- UnoCSS 简化 CSS 的书写,Nice!
CSS 样式太多,重复写 在学习 UnoCSS 之前,我提出几个问题: 你是否有过写完了 HTML 之后,跳转到 style 写 CSS 这样来回跳转的痛苦? 你是否有过不知道如何给节点取类名的痛苦( ...
- 分布式协议与算法-Quorum NWR
1.强一致性与最终一致性 1.1强一致性 强一致性能保证写操作完成后,任何后续访问都能读到更新后的值:强一致性可以保证从库有与主库一致的数据.如果主库突然宕机,我们仍可以保证数据完整.但如果从库宕机或 ...
- 网络编程前戏和OSI七层协议
目录 一.软件开发架构 1.什么是软件开发架构 2.软件开发架构 架构方式一:c/s架构 架构方式二:b/s架构 架构优劣势 二.架构总结 三.网络编程前戏 1.什么是网络编程 2.学习网络编程的目的 ...
- VUE10 计算属性
1 Vue计算属性简介 1)定义:我们需要一个属性,但是这个属性不存在,但是可以通过已有的属性计算得来,那么就可以定义一个计算属性. 2)原理:底层借助了Object.defineproperty方法 ...
- Adobe GENP2019~2022 for Win 一键激活
Adobe GENP2019~2022 for Win 一键激活 一.简介 GenP是一个由国外团队开发的Adobe Win全系列软件激活工具,专门在Win系统上激活所有Adobe软件的2019和20 ...