

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 弹性且高效的系统
<a name="resilient-efficient-systems"></a>

## 灾难恢复 (DR)
<a name="disaster-recovery"></a>

 微服务应用程序通常遵循十二因子应用程序模式，即进程是无状态的，持久数据存储在数据库等有状态的支持服务中。这简化了灾难恢复 (DR)，因为如果服务出现故障，可以轻松启动新实例来恢复功能。

 微服务的灾难恢复策略应侧重于维护应用程序状态的下游服务，例如文件系统、数据库或队列。Organizations 应规划恢复时间目标 (RTO) 和恢复点目标 (RPO)。RTO 是服务中断和恢复之间的最大可接受延迟，而 RPO 是自上次数据恢复点以来的最长时间。

 有关灾难恢复策略的更多信息，请参阅《[工作负载灾难恢复 AWS：云端恢复》](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html)白皮书。

## 高可用性 (HA)
<a name="high-availability"></a>

我们将研究微服务架构各个组件的高可用性 (HA)。

 Amazon EKS 通过跨多个可用区运行 Kubernetes 控制和数据平面实例来提供高可用性。它会自动检测和替换运行状况不佳的控制平面实例，并提供自动版本升级和修补。

Amazon ECR 使用亚马逊简单存储服务 (Amazon S3) Simple Service 进行存储，使您的容器镜像具有高度可用性和可访问性。它可与 Amazon EKS、Amazon ECS 配合使用 AWS Lambda，简化了从开发到生产的工作流程。

 Amazon ECS 是一项区域性服务，它以高度可用的方式简化在一个区域内的多个可用区中运行容器，它提供了多种调度策略，可以根据资源需求和可用性要求放置容器。

 AWS Lambda [在多个可用区中](https://docs.aws.amazon.com/lambda/latest/dg/security-resilience.html)运行，确保单个区域服务中断期间的可用性。如果将您的函数连接到 VPC，请在多个可用区中指定子网以实现高可用性。