

 本白皮书仅供历史参考。有些内容可能已过时，有些链接可能不可用。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 采用 Lambda 的微服务
<a name="microservices-with-lambda"></a>

![\[AWS Cloud architecture with API Gateways and Lambda functions across two accounts.\]](http://docs.aws.amazon.com/zh_cn/whitepapers/latest/serverless-multi-tier-architectures-api-gateway-lambda/images/microservices-with-lambda.png)


*使用 Lambda 的微服务的架构模式*

 微服务架构模式并不局限于典型的三层架构；但是，这种流行的模式可以从使用无服务器资源中获得显著的好处。

 在这种架构中，每个应用程序组件都是分离的，并且是独立部署和运行的。构建微服务所需要的只是使用 Amazon API Gateway 创建的 API 以及随后由 AWS Lambda其启动的函数。您的团队可以使用这些服务将您的环境解耦并分割到所需的粒度级别。

 通常，微服务环境可能会带来以下困难：创建每项新微服务的重复开销、优化服务器密度和利用率方面的问题、同时运行多个微服务的多个版本的复杂性，以及与许多独立服务集成的客户端代码要求激增。

 当你使用无服务器资源创建微服务时，这些问题变得不那么难解决，在某些情况下甚至会消失。无服务器微服务模式降低了创建每个后续微服务的门槛（API Gateway 甚至允许克隆现有 APIs微服务并在其他账户中使用 Lambda 函数）。优化服务器利用率已不再与这种模式相关。最后，Amazon API Gateway 提供了多种常用语言以编程方式生成的客户端 SDKs ，以减少集成开销。