决策表:用于 Docker 的 .NET 实现

提示

此内容摘自电子书《适用于容器化 .NET 应用程序的 .NET 微服务体系结构》,可在 .NET 文档上获取,也可作为免费可下载的 PDF 脱机阅读。

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

下列决策表总结了是使用 .NET Framework 还是 .NET 8。 请记住,对于 Linux 容器,你需要基于 Linux 的 Docker 主机(VM 或服务器);对于 Windows 容器,你需要基于 Windows Server 的 Docker 主机(VM 或服务器)。

重要

开发计算机将运行一个 Docker 主机,Linux 或 Windows 均可。 想在一个解决方案中一起运行和测试的相关微服务都需要在同一容器平台上运行。

体系结构/应用类型 Linux 容器 Windows 容器
容器上的微服务 .NET 8 .NET 8
单一应用程序 .NET 8 .NET Framework
.NET 8
一流性能和可扩展性 .NET 8 .NET 8
到容器的 Windows Server 旧应用程序(“棕色字段”)迁移 -- .NET Framework
基于容器的新开发(“绿色字段”) .NET 8 .NET 8
ASP.NET Core .NET 8 .NET 8(推荐)
.NET Framework
ASP.NET 4(MVC 5、Web API 2 和 Web 窗体) -- .NET Framework
SignalR 服务 .NET Core 2.1 或更高版本 .NET Framework
.NET Core 2.1 或更高版本
WCF、WF 和其他旧框架 .NET Core 中的 WCF(仅客户端库)或 CoreWCF .NET Framework
.NET 8 中的 WCF(仅客户端库)或 CoreWCF
Azure 服务的消耗 .NET 8
(最终大部分 Azure 服务都将为 .NET 8 提供客户端 SDK)
.NET Framework
.NET 8
(最终大部分 Azure 服务都将为 .NET 8 提供客户端 SDK)