热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

浅谈容灾测试

上一篇博客整理了关于灾难恢复的些许知识,这篇博客,主要内容是和灾难恢复息息相关的知识:容灾测试。一、容灾的定义1、定义当各种灾难发生时,在保证生产系统的数据尽量少丢失的情况下,保持生产系统的

上一篇博客整理了关于灾难恢复的些许知识,这篇博客,主要内容是和灾难恢复息息相关的知识:容灾测试。

 

一、容灾的定义

1、定义

当各种灾难发生时,在保证生产系统的数据尽量少丢失的情况下,保持生产系统的业务不间断的运行。任何针对可能发生的灾难,提高系统可靠性和可用性的措施都可以称为容灾。

2、目的

在灾难发生时,减少数据丢失和计划外的宕机时间,保证业务平台可以连续性的正常运行。

3、容灾类型

①、硬件容灾

比如自然灾害、设备故障、人为破坏三种典型的灾难中任何一种灾难发生时,保证生产系统的数据尽可能的少丢失的情况下,保证生产系统的主业务不间断运行。

关注点:自然灾害、设备故障、人为破坏、意外断电等情况,大多数都是可以进行模拟测试。

②、数据容灾

指的是建立一个异地的数据备份和恢复系统,该系统是关键应用数据的一个实时复制和备份恢复中心。这也是几种类型中最重要的一种容灾措施。

③、应用容灾

在数据容灾的基础上,异地建立一套完整的与本地生产系统相同的备份应用系统,可以是互为备份。在在灾难发生的情况下,远程系统迅速接管并保证平台业务正常运行。

4、容灾建设示意图

 

二、容灾的区别

1、容灾与备份

一般而言,容灾指的是在不同机房的数据或者应用系统备份,备份指的是本地数据或者系统备份。

通常说的灾备是将容灾与备份结合起来描述,即本地结合远程数据复制,实现完善的数据保护。示意图如下,仅供参考:

2、容灾与容错

容错测试:主要检查系统或平台的容错能力, 检查软件在异常情况下是否具有自动恢复性的措施或者某种灾难性恢复手段,主要是自我恢复能力。

区别:容灾必须通过系统亢余、灾难检测和系统迁移等技术来实现。

3、容灾与灾难恢复

容灾:灾难发生时,保证生产系统的数据尽量少丢失的情况下,保持生产系统业务不间断的运行。

灾难恢复:灾难发生后,将系统恢复到正常运行的能力。

 

三、容灾的细节

1、容灾项目的特性

①、需求无法提前计划,所有容灾的设计都是在持续优化和测试过程中不断发现新的需求;

②、容灾测试点相互交错复杂,并行测试难度高,测试效率低;

③、项目测试环境依赖较多,复杂度高;

④、项目研发涉及到的业务场景覆盖广,涉及人员多,测试数据准备工作量大;

⑤、测试难度较其他普通业务项目要求高,需要同步根据日志定位所有的测试场景出现原因。

2、容灾测试遵循的标准

①、模拟极端错误发生,测试业务恢复功能和业务持续性流程;

②、发现平台潜在的隐患,确保出线突发情况时平台能够正常运行;

③、在极端流量冲击下,牺牲一小部分非主要业务功能或者一小部分用户体验,保障整体系统的稳定以及主要功能的正常运行(分流、服务降级);

④、进行测试时,需要同步分析日志(确认当前展示的结果是否是因为容灾测试用例生效而出现的)。

3、容灾测试的要点

①、核心原则:基于业务影响分析,全面提高IT系统的抗风险能力;

②、关注两个重要指标:RTO(恢复时间)和RPO(数据丢失量);

③、做好三件事:数据传输、业务切换、容灾演练和监控;

④、实现操作系统、文件、数据库、应用四项恢复。

 

PS:以上内容都是基于自己看过的资料整理的内容,更详细的资料和实践请自行查找相关资料。

 


推荐阅读
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • andr ... [详细]
  • 深入解析JVM垃圾收集器
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践》第二版,详细探讨了JVM中不同类型的垃圾收集器及其工作原理。通过介绍各种垃圾收集器的特性和应用场景,帮助读者更好地理解和优化JVM内存管理。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Navicat Premium 15 安装指南及数据库连接配置
    本文详细介绍 Navicat Premium 15 的安装步骤及其对多种数据库(如 MySQL 和 Oracle)的支持,帮助用户顺利完成软件的安装与激活。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 本文深入探讨了如何通过调整InnoDB的关键配置参数来优化MySQL的随机IO性能,涵盖了缓存、日志文件、预读机制等多个方面,帮助读者全面提升数据库系统的性能。 ... [详细]
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社区 版权所有