本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Linux 容器中重新架构为微服务
微服务架构是一种将单个应用程序开发为一套小型服务的方法。每个服务都在自己的进程中运行,并通过轻量级机制与其他服务通信。这种方法将单体应用程序分解为较小的服务,其中每项服务仅用于单一用途,并作为容器进行部署。
使用案例
在以下情况下,此迁移策略很有用:
-
你想将你的单片系统分解为微服务。
-
您有资源和时间可用于重构。
-
您可以解决所有.NET 框架依赖关系。
-
您的应用程序将概述长时间运行。
优势
与本地.NET 应用程序相比,这种迁移方法具有以下优点:
-
更快地创新,因为在微服务架构中添加新功能更容易
-
高可用性和可靠性
-
提高了灵活性和按需可扩展性
-
独立部署、现代持续集成和持续部署(CI/CD)管道
-
强大的模块边界和技术多样性
缺点
-
重构的工作量和成本
-
潜在的操作复杂性
AWS 服务
您可以使用以下AWS服务来开发基于微服务的系统:
工具
AWS专业服务提供自定义工具和服务,帮助您将单片应用程序重构为微服务。
部署决策
您可以从五个部署选项中进行选择:
-
如果您想完全控制计算环境的配置,包括内存和存储设置,并控制操作系统补丁,请将您的应用程序作为 Linux 容器部署在 EC2 实例上。
-
如果您希望容器由 Kubernetes 管理并作为无服务器容器运行,请使用 Fargate 将您的应用程序作为 Linux 容器部署在 Amazon EKS 上。
-
如果您希望容器由 Amazon ECS 管理并作为无服务器容器运行,请使用 Fargate 将您的应用程序作为 Linux 容器部署在 Amazon ECS 上。
-
如果您希望容器由 Kubernetes 管理,但又想自己管理容器的计算资源:将您的应用程序作为 Linux 容器部署在 Amazon EKS 上。
-
如果您希望容器由 Amazon ECS 管理,但又想自己管理容器的计算资源:将您的应用程序作为 Linux 容器部署在 Amazon ECS 上。