
# 什么是应用韧性
应用韧性是应用系统在运行过程中面对各种异常场景，如基础设施故障（如数据库异常）、外部攻击（如网络DDoS攻击超出预定限额流量）、外部依赖故障（如依赖系统访问超时或不可用）、地域灾难（如大面积停电、洪水）等，仍能提供和维持可接受的服务水平的能力，对系统至关重要。
系统韧性设计主要涉及以下两个方面：
- 确保系统具有高可用的架构，如无单点故障
- 各种故障场景下的恢复能力，如数据丢失、设备或站点故障等场景均能恢复
相对于传统数据中心，华为云可以提供具备高可用、弹性伸缩、自动备份、跨AZ容灾、跨Region容灾等高可用能力的基础设施与云服务，便于客户构建高可靠的系统。例如：
- EVS云硬盘、OBS对象存储采用分布式存储，可避免单个硬盘、单个服务器或单个机架等硬件故障的影响。
- RDS数据库提供自动数据备份、跨AZ和跨Region的数据复制与切换。
不过，即使应用系统利用云平台能力具有了这些高可用能力，要实现较高的可用性，仍需要构建针对各种偶发故障下的恢复能力，如：
- 由于硬件故障导致的高可用切换或跨AZ切换过程中，导致瞬时链接中断，需要应用系统具备链接中断重试的功能。
- 由于外部流量突发导致业务过载，需要应用系统具备流量控制的能力。
- 部分强依赖于硬件的负载，如依赖本地硬盘、GPU等，由于硬件故障导致服务中断，需要应用系统自身构建高可用的能力。
不同的应用系统，可用性要求可能不同，采用的韧性恢复方案会有差异。
