将 PRODUCT CATALOG 迁移到 APP MESH

挑战

现在,Product Catalog 的前端frontend-node 固定向prodcatalog 发出请求,prodcatalog 固定向proddetail 发出请求。

每次发布新版本的 proddetail 时,我们还需要发布新版本的 prodcatalog 以支持新旧版本分别指向其特定版本的端点, 这不是长期维护的最佳配置。

prodcatalog 后端服务部署到 Faragate,其余服务 frontend-nodeproddetail 部署到 Managed Nodegroup,我们需要将所有这些服务添加到 App Mesh 并确保这些微服务可以相互通信。

解决方案

我们将演示如何使用AWS App Mesh来简化此架构; 通过虚拟化 proddetail 服务,我们可以将动态配置和路由流量添加到对应版本的endpoint,从而最大限度地减少每次有新的 proddetail 服务发布时,需要完全重新部署 prodcatalog 服务的情况。

我们还将演示 Nodegroup 和 Fargate 中的微服务如何通过 App Mesh 相互通信。

当完成本章中的应用迁移后,我们的应用架构如下:

Product Catalog App with App Mesh