本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS 无服务器服务集成微服务
Tabby Ward、Abhishek Agawane 和 Matt Kahn,Amazon Web Services
2025 年 9 月(文档历史记录)
实现组织软件现代化的关键环节在于选择正确的架构模式,从而实现敏捷性并快速响应不断变化的业务需求。在某些应用中,单体架构是常见的选择。然而,对于许多组织而言,当使用案例与微服务带来的优势相契合时,将单体应用重构为微服务可能是一种有效的现代化策略。
微服务与单体架构并非互斥,许多成功的企业同时采用这两种模式,其中模块化单体架构服务于某些领域,微服务则处理其他领域。
当微服务成为架构的一部分时,可能会调用多个服务来获取一项业务交易的数据。实施这些集成需要精心设计,以应对数据一致性、延迟和运营复杂性等潜在挑战。如果微服务集成得当,可带来诸多优势,例如单独扩缩、开发速度提升以及潜在的成本优化。
该指南是内容系列的一部分,该系列涵盖了推荐的应用程序现代化方法 AWS。该系列还包括:
目标受众
本指南适用于确定微服务适用于其特定使用案例的应用程序所有者、业务所有者、架构师、技术负责人和项目经理。该指南介绍了微服务之间同步和异步通信的几种模式,即使用无服务器( AWS 服务 例如使用无服务器) AWS Lambda 和 Amazon API Gateway 来实现自主性和可扩展性。
目标
通过使用本指南集成新的微服务,您可以高效地将组织的架构转变为微服务架构。这有助于通过高可扩展性、增强的弹性、持续交付和故障隔离,快速适应不断变化的业务需求。微服务架构还可助力加快创新速度,因为每个微服务都可以单独部署和测试。
微服务架构还有助于缩短产品或服务的上市时间,因为每项微服务都有一个独立的代码库,可以更轻松、更快地添加新功能并对其进行迭代。
安全性
您必须妥善保护微服务以保护服务和数据的完整性,同时确保安全措施不会对应用程序的性能造成负面影响。
在微服务环境中,必须考虑每项服务如何对来自外部客户端或其他微服务的请求进行身份验证和授权。还要考虑每项服务将如何安全地访问其他 AWS 服务。
AWS 服务 应通过范围狭窄 AWS Identity and Access Management (IAM) 角色授予访问权限。承担 IAM 角色会为微服务提供短期 IAM 凭证,形式包括访问密钥、访问密码和会话令牌。各种软件开发套件 (SDKs) 使用AWS 签名版本 4 (Sigv4) 对 AWS 服务 请求进行签名。