介绍
假设你是一家名为 eShop“在线零售商”的软件开发人员。 零售商使用基于微服务的体系结构,该体系结构原生于云,并使用 .NET 作为其在线店面。 该解决方案包括一个称为产品服务的 NET API。 商店服务调用后端产品 API 以获取要销售的产品的详细信息。
本模块重点介绍 复原能力,即应用程序或服务能够处理问题。 弹性能够使应用程序以对用户影响最小的方式实现容错。 探索了以下复原方法:
- 使用基于代码的方法
- 使用基于基础结构的方法
将应用修改为在微服务中包含一些基于代码的复原处理策略。 你还将重新配置 Azure Kubernetes 服务 (AKS) 部署,以实现基于基础结构的解决方案。
使用自己的 Azure 订阅在此模块中部署资源。 如果没有 Azure 订阅,请在开始之前创建 一个免费帐户 。
重要
若要避免在 Azure 订阅中产生不必要的费用,请务必在完成本模块后删除 Azure 资源。
开发容器
本模块包含定义开发容器或开发容器(dev container)的配置文件。 使用开发容器可确保环境标准化,并且预配置必要的工具。
开发容器在两个环境中都可运行。 在开始之前,请按照以下链接之一中的步骤设置环境,包括安装 Docker 和必要的 Visual Studio Code 扩展。
学习目标
通过学习本模块,你将能够:
- 了解基础复原概念。
- 观察没有复原策略的微服务的行为。
- 在一个微服务中实现 HTTP 请求的失败处理代码。
- 将基于基础结构的复原解决方案部署到 AKS 群集。
先决条件
- 熟悉初学者级别的 C# 和 .NET 开发。
- 熟悉 RESTful 服务概念。
- 了解容器和 AKS 的概念(中级水平)。
- 能够在 GitHub Codespaces 或 Visual Studio Code 中运行开发容器。