热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Redis——持久化:RDB(快照)/AOF(写命令)

一、持久化:1)Redis之所以速度非常快,原因redis的读写操作都是在内存中进行的;2)内存中读写完成后必然要存入到磁盘中,rdb和aof就是持久化的两种模式;二、RDB快照:

一、持久化:

  1)Redis之所以速度非常快,原因redis的读写操作都是在内存中进行的;

  2)内存中读写完成后必然要存入到磁盘中,rdb和aof就是持久化的两种模式;

二、RDB快照:

  1)RDB就是将某一时刻的快照保存到磁盘中,即数据被保存下来;

  2)可以在redis.conf中配置快照保存的频率,redis会自动保存快照;

    

    900秒:变化1个即保存;

    300秒:变化10个即保存;

    60秒:变化10000个即保存;

  3)隐患:

    因为快照是根据时间点来保存的,如果时间点还未到,但服务器崩溃了,则崩溃时间到上个时间点的数据都丢失了;

  4)docker中启动:

    //挂一个数据卷在外面;

docker run -v /usr/local/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /usr/local/docker/redis/conf/data:/data --name myredis -p 6379:6379 redis redis-server /usr/local/etc/redis/redis.conf

三、AOF(写命令):

  1)AOF是将所有的读写操作以日志的方式保存到一个aof文件中,根据命令时间数据的恢复;

  2)redis.conf配置:

    

      

    

    说明:

    (1)appendfilename:AOF 文件名称

    (2)appendfsync:同步频率

      always:每一条指令都立即生成日志,性能低;

      everysec:每秒生成一次,性能好;

    (3)appendonly:是否打开 AOF 持久化功能

   3)AOF重写:

    (1)当aof文件过大时,会执行重写;如set key 1,incr key 100次,会被重写为set key 100;

    (2)redis.conf配置:

      

      auto-aof-rewrite-percentage 100:超过最小体积,本次重写体积为100%,则为两倍;

      auto-aof-rewrite-min-size 64mb:最小重写体积;

  4)使用:

    配置开启后挂一个数据卷:

docker run -v /usr/local/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /usr/local/docker/redis/conf/data:/data --name myredis -p 6379:6379 redis redis-server /usr/local/etc/redis/redis.conf

三、两种方式选择:

   两种都用!!

  RDB 快照方便数据恢复; AOF有bug;

 


推荐阅读
  • 本文深入探讨了 Redis 的两种持久化方式——RDB 快照和 AOF 日志。详细介绍了它们的工作原理、配置方法以及各自的优缺点,帮助读者根据具体需求选择合适的持久化方案。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 随着Redis功能的不断增强和稳定性提升,其应用范围日益广泛,成为软件开发人员不可或缺的技能之一。本文将深入探讨Redis集群的部署与优化,包括主从备份机制、哨兵模式以及集群功能,帮助读者全面理解并掌握Redis集群的应用。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 本文介绍了一个基于 Java SpringMVC 和 SSM 框架的综合系统,涵盖了操作日志记录、文件管理、头像编辑、权限控制、以及多种技术集成如 Shiro、Redis 等,旨在提供一个高效且功能丰富的开发平台。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 网络攻防实战:从HTTP到HTTPS的演变
    本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ... [详细]
  • MQTT技术周报:硬件连接与协议解析
    本周开发笔记重点介绍了在新项目中使用MQTT协议进行硬件连接的技术细节,涵盖其特性、原理及实现步骤。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
author-avatar
钟寓宛筠
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有