AWS App Config 和 Code Deploy 之间有什么区别,以及何时使用它们

What is the difference between AWS App Config and Code Deploy, and when to use each one

这两个服务似乎都做类似的事情,你什么时候使用每一个。

AWS AppConfig 帮助您将 配置更改 应用到 运行 个应用程序。

使用 AWS AppConfig(AWS Systems Manager 的一项功能)创建、管理和快速部署应用程序配置。 AppConfig 支持对任何规模的应用程序进行受控部署,并包括 built-in 验证检查和监控。您可以将 AppConfig 与托管在 EC2 实例、AWS Lambda、容器、移动应用程序或物联网设备上的应用程序一起使用。

AWS CodeDeploy 帮助您推出新版本 应用程序。

AWS CodeDeploy 是一项完全托管的部署服务,可自动将软件部署到各种计算服务,例如 Amazon EC2、AWS Fargate、AWS Lambda 和您的 on-premises 服务器。 AWS CodeDeploy 使您可以更轻松地快速发布新功能,帮助您避免应用程序部署期间的停机时间,并处理更新应用程序的复杂性。

CodeDeploy 实际上是您用来部署代码的工具,它支持部署到 EC2 hosts (including on-premise), Lambda and ECS。它需要一个存档并根据特定条件将其部署到资源(例如基于 EC2 的部署,您可以指定要部署到的标签名称或自动缩放组)。

CodeDeploy 还与 CodePipeline 集成,使您能够为您的应用程序构建完整的部署管道,包括构建、测试和部署应用程序。

App Config 用于为您的应用程序部署配置设置。

AWS AppConfig enables customers to quickly rollout application configuration changes, independent of code, across any size application hosted on Amazon Elastic Compute Cloud (EC2) instances, containers, and serverless applications and functions.

使用 parameter store value or an SSM document 您将使用 AppConfig 在您的应用程序中执行功能的推出(支持 A/B 样式测试,按比例推出)。这使您能够安全地测试应用程序中的新功能,而无需使用全有或全无的方法。

总结,CodeDeploy 将用于部署您的代码库,而 AppConfig 将用于推出您的应用程序使用的配置值。

只是为了补充@DenisTraub 和@ChrisWilliams 的回答。

两者的一大区别是CodeDeploy不需要您修改您的应用程序。它可以部署任何东西,而无需更改应用程序的一行代码。

但是,要使用 AppConfig,您 必须修改 您的应用程序。这是因为您的应用程序必须汇集 AppConfig stored/managed 的任何配置更改,并响应这些更改。