AWS 应用程序编译器常见问题

问:AWS 应用程序编译器是什么?

AWS 应用程序编译器是一种可视化生成器,借此开发人员可以在可视化画布中拖动、划分和连接 AWS 服务,从而更轻松地设计应用程序架构。开发人员可以从头开始创建新架构,也可以导入现有 AWS CloudFormation 或 AWS Serverless Application Model (SAM) 模板。AWS 应用程序编译器体验聚焦于常见无服务器服务(例如 AWS Lambda、AWS Step Functions 和 Amazon EventBridge),但它可以用于编译 AWS CloudFormation 资源支持的所有 AWS 服务。开发人员可以导出基础设施即代码(IaC)以纳入他们的现有流程,例如通过 AWS SAM 命令行界面(CLI)进行本地测试、通过版本控制进行同行评审,或者通过 CloudFormation 和持续集成与交付(CI/CD)管线进行部署。

问:为什么我应该使用 AWS 应用程序编译器?

AWS 应用程序编译器将构建现代基础设施的抽象猜测转化为更易于理解和快速迭代的可视化流程。您不必从学习 IaC 框架或浏览服务文档开始。您可以立即绘制解决方案图,与跟同事在白板上所做的一样,根据需要将解决方案概念化或具体化。当您在可视化编辑器中迭代时,AWS 应用程序编译器会为相关服务集成、资源之间的 AWS 身份和访问管理(IAM)策略操作准备配置,还会帮助您使用上下文相关的标签对资源进行分组,以便您的团队保持一致。

问:我能否在 IDE 中使用应用程序编译器?

可以,AWS 应用程序编译器包括在 AWS Toolkit for Visual Studio Code 中。首先安装 AWS 工具包。在 IDE 中打开 CloudFormation 模板,然后单击“使用应用程序编译器打开”按钮。也可以通过在 VS Code 文件浏览器中右键单击 CloudFormation 模板来打开应用程序编译器。

问:我能否在 AWS 应用程序编译器中使用 CodeWhisperer?

可以,CodeWhisperer 与 AWS 应用程序编译器一起包含在 AWS Toolkit for Visual Studio Code 中。可以结合使用 CodeWhisperer 将创意转变为功能性 CloudFormation 模板,在 AWS 应用程序编译器中可视化新模板以继续编辑应用程序。如果在 VS Code 中启用 CodeWhisperer,还可以直接从 AWS 应用程序编译器中的资源详细信息页面自动生成 CloudFormation 资源配置。当您接受模板或图表中的代码建议时,更改会自动反映在另一个模板或图表中。

问:可视化编辑器提供哪些资源?

AWS 应用程序编译器可以导入并可视化 CloudFormation 中定义的所有 AWS 架构。AWS 应用程序编译器将帮助支撑您通过可视化生成器添加的所有服务的资源属性,许多无服务器资源使用最佳实践 IaC 进行配置,包括与其他服务的集成。

问:我是否可以在应用程序中定义工作流程?

可以,应用程序编译器 支持 AWS Step Functions 工作流程,该工作流程可以编排应用程序中的多种服务。可以将 Step Functions 服务添加到应用程序中,并使用 Step Functions Workflow Studio(Step Functions 工作流的可视化生成器)编辑工作流程,在应用程序编译器中提供单一的可视化生成器体验。使用应用程序编译器中的 Workflow Studio,您可以通过可视化设计工作流程、简化的工作流程任务与应用程序资源链接、通过定义替换简化的各种环境或账户的资源参数化以及在资源之间准备 IAM 策略操作,从而加快从开发到部署的路径。

问:哪些 IaC 模板受支持?

您可以使用 CloudFormation 和 AWS SAM 模板进行导入和可视化。

问:AWS 应用程序编辑器如何将架构图转换为基础设施?

AWS 应用程序编译器维持可转换为 IaC 定义的整个架构的模型,从 CloudFormation 支持开始。您可以在可视化编辑器中查看这些定义的预览,也可以导出整个基础架构模板以纳入您的版本控制流程。当您使用编辑器关联所有资源时,AWS 应用程序编译器旨在将两项服务的集成意图转换为相应的 IaC 配置,以实现相关的服务集成和 IAM 权限,对此您可以随时检查或修改。例如,在可视化画布上添加 Amazon Simple Storage Service(S3)存储桶并将其连接到 Lambda 函数,这就需要对 IAM policy、事件订阅和函数本身的支持文件进行必要的配置。

问:AWS 应用程序编译器如何助力我遵循 AWS 最佳实践?

AWS 应用程序编译器旨在配置遵循 AWS 最佳实践的 IaC 定义。例如,当开发人员将 S3 存储桶添加到画布时,AWS 应用程序编译器旨在配置并集成 BucketEncryption 和 PublicAccessBlockConfiguration 属性,以便使用默认 AWS Key Management Service (KMS) 密钥激活加密功能并禁用公共访问。您可以在可视化编辑器中更改这些设置,而无需深入研究 CloudFormation,但如果您什么都不做,则可以部署遵循 AWS 最佳实践的 S3 存储桶,减少常见的配置错误或疏忽。

问:我是否可以使用 AWS Application Composer 编辑现有基础设施?

可以,借助 AWS 应用程序编译器,您可以导入现有 CloudFormation IaC 模板。AWS 应用程序编译器将快速提供模板的可编辑视图。

问:AWS Application Composer 是否有助于我部署应用程序架构?

您可以借助 AWS Application Composer 编辑和导出可部署的 CloudFormation 模板,其中内置了适用于几种 AWS 无服务器资源的 AWS 最佳实践。您可以通过 AWS SAM CLI 或与 CloudFormation 模板兼容的现有 CI/CD 工具,将此模板与 CloudFormation 工具一起部署。

问:AWS Application Composer 如何收费?

使用 AWS Application Composer 不会额外产生任何费用。使用 AWS Application Composer 创建的 AWS 资源(例如 S3 存储桶或 Lambda 函数)的付费方式与手动创建的 AWS 资源相同。您只需按您的实际用量付费;既没有最低费用,也不要求预先承诺。

详细了解 AWS Application Composer

关于构建第一个无服务器应用程序的分步说明。

浏览文档 »
开始在控制台中构建

在 AWS 管理控制台中,使用 AWS 应用程序编译器开始构建。

开始使用 »
Check out more details
详细了解无服务器

了解可用作组件以使用 AWS 应用程序编译器构建无服务器应用程序的 AWS 服务。

在 AWS 上探索无服务器 »