出处:

https://blog.51cto.com/se7en/1085442

http://www.iso27001.org.cn/fuwu/it/iso22301/show_511.html

http://stor.51cto.com/art/201806/576321.htm

在灾难恢复方面,目前业界公认有三个目标值得努力。一是恢复时间,企业能忍受多长时间没有 IT,处于停业状态;二是网络多长时间能够恢复;三是业务层面的恢复。整个恢复过程中,最关键的衡量指标有两个:一个是 RTO,另一个是 RPO。所谓 RTO,Recovery Time Objective,它是指灾难发生后,从 IT 系统当机导致业务停顿之时开始,到 IT 系统恢复至可以支持各部门运作、恢复运营之时,此两点之间的时间段称为 RTO。所谓 RPO,Recovery Point Objective,是指从系统和应用数据而言,要实现能够恢复至可以支持各部门业务运作,系统及生产数据应恢复到怎样的更新程度。这种更新程度可以是上一周的备份数据,也可以是上一次交易的实时数据。

选择标准

对灾难恢复而言, RTO 与 RPO 哪个衡量指标更合适呢?在考虑采用哪个指标之前,IT 人首先要弄清楚一个基本概念,企业的容灾系统预防的是什么灾害,是多少年一遇的,能忍受多少损失,需要算出一个大概的成本,当然不一定很精确。其次,无论企业容灾系统是采用冷备、热备、温备、还是磁盘备份,几分钟恢复业务和几天恢复业务效果是完全不一样的。企业需要明确对恢复时间的容忍底限是多少。再从灾备本身的意义来讲,无论采用哪种衡量指标,最终目的是要能够很好地检验灾备系统的实用性能,否则就失去建立灾备的意义了。而灾备最核心的作用就是确保灾难发生后业务能够连续运行,交易中的数据完整保存,丢失越少越好。因此业务层面的恢复,企业要有一个底限。参考世界范围内一系列灾难恢复经验,国家之间的差别非常大。比如在美国,政府是第一位的,警察局对数据的恢复要求特别高。而在中国,无论什么性质,银行始终是排在第一位的。

综合平衡

作为银行,除开展自身业务之外,更多数据来自上下级银行间的财务汇兑与结算。站在管理者的位置上,一旦灾难发生,最重要的是在尽可能短的时间内排除障碍,恢复业务,保证系统做到连续运行。因此,从这个角度出发,银行容许系统停滞的时间应当越短越好。选择 RTO 刚好合适。但是,RTO 对成本要求太高,与回报似乎不成正比。企业资金不可能无限制地投入到一个灾备系统中。对于银行证券这样的联机交易事故处理非常紧密的金融机构而言,可能每一笔、每一单、每一分钱都很重要,所以都需要恢复。RPO 显然更为合适。许多时候进行选择并不意味着非此即彼,这与现实婚姻中一夫一妻的限制还是有差别的。RTO 和 RPO 对银行来讲都很重要。RTO 越短、RPO 越新,银行面临的损失就越小,但这也意味着系统开发成本将会急剧上升。许多时候,最佳的容灾解决方案却不一定是效益最好的。反之亦是。如何去平衡这中间的关系,不仅是门学问,更像是艺术。

根据国际经验,在选择“你”还是“她”的时候,企业应当考虑灾难发生后会在多大层面上冲击业务,这涉及到企业形象,商业机密,信誉评级,品牌竞争力等等方面,各个企业的情况不同,要根据自己的情况选择合适的“对象”。灾难恢复的目的是业务连续进行,因此无论采用 RTO 还是 RPO,都要朝着这个核心靠拢。

灾备系统 RTO与RPO的更多相关文章

  1. 灾备系统的评判指标:RTO、RPO

    RTO(RecoveryTime Object)是指灾难发生后,从IT系统崩溃导致业务停顿之刻开始,到IT系统恢复至可以支持各部门运作,业务恢复运营之时,此两点之间的时间段称为RTO. RPO(Rec ...

  2. 如何守护数据安全? 这里有一份RDS灾备方案为你支招

    当今世界是一个充满着数据的互联网世界,生活的方方面面都在不断产生着数据,比如出行记录.消费记录.浏览的网页.发送的消息等等.除了文本类型的数据,图像.音乐.声音都是数据.对于企业而言,数据更是重要的生 ...

  3. 容灾管理中的RTO与RPO的关系

    在灾难恢复方面,目前业界公认有三个目标值得努力.一是恢复时间,企业能忍受多长时间没有 IT,处于停业状态:二是网络多长时间能够恢复:三是业务层面的恢复.整个恢复过程中,最关键的衡量指标有两个:一个是 ...

  4. 理解 OpenStack 高可用(HA)(1):OpenStack 高可用和灾备方案 [OpenStack HA and DR]

    本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1)OpenStack 高可用方案概述 (2)Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3)N ...

  5. 云区域(region),可用区(AZ),跨区域数据复制(Cross-region replication)与灾备(Disaster Recovery)(部分1)

    本文分两部分:部分1 和 部分2.部分1 介绍 AWS,部分2 介绍阿里云和OpenStack云. 1. AWS 1.1 AWS 地理组件概况 AWS 提供三种地理性组件: Regions:区域,即A ...

  6. openStack灾备方案说明

    本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1) OpenStack 高可用方案概述 (2) Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3 ...

  7. openStack高可用性和灾备方案

    1. 基础知识 1.1 高可用 (High Availability,简称 HA) 高可用性是指提供在本地系统单个组件故障情况下,能继续访问应用的能力,无论这个故障是业务流程.物理设施.IT软/硬件的 ...

  8. 基于Ceph快照的异地灾备设计

    作者:吴香伟 发表于 2017/02/06 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 喜欢请点击右边打赏,谢谢支持! 引子 技术改变生活. 越来越方便的手机 ...

  9. 基于Cloudera Search设计数据灾备方案

    当实际项目上线到生产环境中,难以避免一些意外情况,如数据丢失.服务器停机等.对于系统的搜索服务来说,当遇到停机的情况意味着在停机这段时间内,用户都不能通过搜索的相关功能进行访问数据,停机意味着将这一段 ...

随机推荐

  1. art-template自定义函数

    自定义函数 // 百分比计算 template.defaults.imports.percentage = function (num1, num2) { var res; if(!num1 & ...

  2. H5页游戏内存溢出问题

    记录自己解决的第一个H5页的性能问题, 关于内存溢出 拼字游戏 问题表现 初始化后, 第一次拼字并不卡. 随着拼的次数越来越多, 越来越卡 浏览器任务管理器中可以看出, 内存持续升高 确定内存问题, ...

  3. oracle口令文件在windows和linux系统下的命名和位置

      分类: Oracle 1.windows系统下 oracle口令文件在:$ORACLE_HOME/database目录下: 命名规则为:PWD$SID.ora   2.linux系统下 oracl ...

  4. LeetCode 复原IP地址(探索字节跳动)

    题目描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11.135&qu ...

  5. CORS和jsonp实现跨域请求

    同源策略:所谓同源是指,域名,协议,端口相同,它是由Netscape提出的一个著名的安全策略,现在所有支持JavaScript 的浏览器都会使用这个策略.当浏览器同时打开两个tab页面(两个不同服务器 ...

  6. 【MyBatis】【SQL】删除最快纪录诞生,从一千万条记录中删除八百万条仅用2分6秒

    在 https://www.cnblogs.com/xiandedanteng/p/11669629.html 里我做个一个循环按时间查ID并删除之的程序,运行时间是4分7秒. 但是这个程序走了很多次 ...

  7. babel 实践

    一.@babel/core var babel = require("@babel/core");babel.transform(code, options, function(e ...

  8. Python写的大小写转换小工具

    几行代码的小工具,用于进行如下转换 TRANSACTIONS ON CLOUD COMPUTING => Transactions On Cloud Computing orig = 'TRAN ...

  9. [Mysql]一对多关系是如何发挥作用的?

    一个孩子只有一个妈妈,而一个妈妈可以有多个孩子,这是典型的一对多的关系,这里采用navicat图形化界面建立二者的关系. 第一步:创建mother表,如下图:  第二步:创建children表,在ch ...

  10. java IO流的API

    常用的IO流API有:[InputStream.OutputStream] [FileInputStream.FileOutputStream] [BufferedInputStream.Buffer ...