

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

# 将架构重新设计为没有容器的微服务
<a name="refactor-micro"></a>

AWS Lambda 是一项无服务器计算服务，无需预置或管理服务器、创建可感知工作负载的集群扩展逻辑、维护事件集成或管理运行时，即可运行代码。只有在需要时 Lambda 才运行您的函数，并且能自动扩展，从每天几个请求扩展到每秒数千个请求。您只需为所消耗的计算时间付费，当您的代码未运行时，不收取任何费用。在这种方法中，将单体应用程序分解为较小的服务，其中每项服务都用于单一用途。如果服务不是持续运行，则可以将其实现为 Lambda 函数；否则，该服务应在容器中运行。

## 使用案例
<a name="refactor-micro-use-case"></a>

您可以在以下场景中使用此迁移策略：
+ 你想将你的整体系统分解成微服务。
+ 您有足够的资源和时间进行重构。
+ 您可以解析所有.NET 框架依赖关系。
+ 您的应用程序不会持续运行；它们运行的时间很短。

## 优点
<a name="refactor-micro-advantages"></a>

与本地.NET 应用程序相比，这种迁移方法具有以下优点：
+ 更快的创新，因为在微服务架构中添加新功能更容易
+ 高可用性和可靠性
+ 提高灵活性和按需扩展性
+ 独立部署和现代 CI/CD 管道
+ 强大的模块界限和技术多样性
+ 节省成本
+ 减少基础设施配置工作

## 劣势
<a name="refactor-micro-disadvantages"></a>
+ 重构的工作量和成本
+ 潜在的操作复杂性
+ 不支持长时间运行的应用程序

## AWS 服务
<a name="refactor-micro-services"></a>

以下是您可以用来开发微 AWS 服务架构的一些重要服务，包括： AWS Lambda
+ [Amazon API Gateway](https://aws.amazon.com/api-gateway)
+ [Amazon Simple Notification Service (Amazon SNS)](https://aws.amazon.com/sns)
+ [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs)
+ [AWS Lambda](https://aws.amazon.com/lambda)
+ [CloudFormation](https://aws.amazon.com/cloudformation) 或 [AWS CDK](https://aws.amazon.com/cdk)
+ [IAM](https://aws.amazon.com/iam)
+ [Amazon S3](https://aws.amazon.com/s3)

## 工具
<a name="refactor-micro-tools"></a>

AWS Professional Services 提供自定义工具和服务，帮助您将整体应用程序重构为微服务。

## 部署决策
<a name="refactor-micro-deploy"></a>

这种迁移和现代化方法得到以下方面的支持 AWS Lambda 

 ![\[Refactoring .NET applications as microservices on AWS\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/modernization-net-applications/images/rearchitect-microservices.png) 