你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

示例应用简介

注意

每月前 50 个 vCPU 小时和 100 GB 内存小时可用。 有关详细信息,请参阅Azure 上的应用博客上的降价 - Azure Spring Apps 功能更多,成本更低!

注意

Azure Spring Apps 是 Azure Spring Cloud 服务的新名称。 虽然该服务有新名称,但一些地方仍会使用旧名称,我们仍在更新屏幕截图、视频和图形等资产。

本文适用于:✔️ 基本版/标准版 ✔️ 企业版

本快速入门将使用常见的示例应用 PetClinic,演示如何将应用部署到 Azure Spring Apps 服务。 Pet Clinic 示例演示了微服务体系结构模式并强调了服务明细。 你将了解如何使用 Azure Spring Apps 功能(例如服务发现、配置服务器、日志、指标、分布式跟踪和开发人员友好的工具支持)将服务部署到 Azure。

若要遵循 Azure Spring Apps 部署示例,只需使用根据需要提供的源代码位置。

下图显示了 PetClinic 应用程序的体系结构。

Diagram that shows the architecture of the PetClinic app.

注意

当应用程序托管在 Azure Spring Apps 企业计划中时,适用于 VMware Tanzu 的托管应用程序配置服务会承担 Spring Cloud Config Server 的角色,托管 VMware Tanzu 服务注册表则承担 Eureka 服务发现的角色,而无需对应用程序进行任何代码更改。 有关详细信息,请参阅本文后半部分的 Azure Spring Apps 托管的基础结构服务

要部署的功能服务

PetClinic 可分解为 4 个核心 Spring 应用。 所有微服务都是由业务域组织的可独立部署的应用程序。

  • 客户服务:包含普通用户输入逻辑和验证,其中包括宠物和主人信息(姓名、地址、城市、电话)。
  • 访问服务:存储并显示每条宠物评论的访问信息。
  • 兽医服务:存储并显示兽医的信息,包括姓名和专业领域。
  • API 网关:API 网关是系统中的单个入口点,用于处理请求并将请求路由到相应的服务,或调用多个服务来聚合结果。 这三个核心服务向客户端公开外部 API。 在实际系统中,函数的数量可能会随系统的复杂性迅速增长。 呈现一个复杂的网页可能会涉及数百个服务。

由 Azure Spring Apps 托管的基础结构服务

分布式系统中有几种支持核心服务的常用模式。 Azure Spring Apps 提供的工具可增强 Spring Boot 应用程序以实现以下模式:

  • 适用于 Tanzu 的应用程序配置服务:适用于 Tanzu 的应用程序配置服务是商用 VMware Tanzu 组件之一。 它可以管理从一个或多个 Git 存储库中定义的属性填充的 Kubernetes 本机 ConfigMap 资源。
  • Tanzu 服务注册表:Tanzu 服务注册表是商用 VMware Tanzu 组件之一。 它为应用提供了服务发现模式的实现,这是基于 Spring 的体系结构的关键原则之一。 你的应用程序可以使用服务注册表来动态发现和调用已注册的服务。

数据库配置

在其默认配置中,PetClinic 使用在启动时用数据填充的内存数据库 (HSQLDB)。 如果需要持久性数据库配置,则为 MySQL 提供类似的设置。 Connector/J 的依赖项(MySQL JDBC 驱动程序)已经包含在 pom.xml 文件中。

PetClinic 的示例用法

有关完整实现的详细信息,请参阅 PetClinic 的分支。 示例根据需要引用源代码。

后续步骤