微软发布 .NET 云原生开发框架—— .NET Aspire

众所周知,微软于 2023-11-14日 发布了 .NET 8 的正式版。伴随着这个重要 .NET 版本的发布,微软也发布了一个全新的 .NET云原生开发框架—— .NET Aspire

微软发布 .NET 云原生开发框架—— .NET Aspire_第1张图片

.NET Aspire 能力提供

.NET Aspire 提供了如下 3 个方面的能力,来帮助我们使用 .NET 开发分层、云就绪的可观测、本地与生产环境一致的分布式云原生应用程序:

  • 微服务的编排能力:在开发和线上环境自动处理多个微服务之间的连接和依赖,也即内置了服务发现等基础能力。
  • 基础服务的访问能力:通过提供一系列 Nuget 包,把对一些基础服务的访问进行统一封装(比如,缓存、数据库、消息队列等),方便微服务直接使用。
  • 工具链的相应配合:在 VSVSCode 等工具中添加对以上编排能力的支持,并提供一系列开箱即用的模板,来方便开发人员进行开发、调试和部署云原生应用。

对于详细的介绍,建议阅读官方文档:

  • https://learn.microsoft.com/zh-cn/dotnet/aspire/get-started/aspire-overview

个人理解,这个 .NET Aspire 可以看作类似 Spring Cloud 的东西。之前大家不是希望有“全家桶”嘛,现在这个就是。另外,.NET Aspire 的服务编排能力应该也是借鉴了 Tye 这个项目的一些灵感(本来都是 .NET 团队的作品)。

.NET Aspire vs Dapr

微软发布 .NET 云原生开发框架—— .NET Aspire_第2张图片

那么 .NET AspireDapr 的关系和区别是什么呢:

对比项 .NET Aspire Dapr
语言支持 专注于 .NET 世界 适合多种语言融合
编排能力 内建到框架本身,会嵌入到应用内部(这点和之前的很多微服务/云原生框架类似) 由边车(Sidecar)提供,依靠 Dapr Runtime 来处理
组件 只是对访问的封装,并没有对一类组件进行抽象 DaprAPIs(之前称之为构建块)是对一类组件进行高度抽象
基础设施 不关心基础设施的抽象和迁移,虽然理论也做得到 对基础设施也进行了一定的抽象
工具支持 微软官方的产品,VSVSCode 对其有良好的工具支持 微软支持的开源项目,工具的支持明显不足,目前已经加入 CNCF

|什么是 CNCF ?|

微软发布 .NET 云原生开发框架—— .NET Aspire_第3张图片

CNCF,全称 Cloud Native Computing Foundation(云原生计算基金会),是 Linux 基金会旗下的子基金会。CNCF 致力于为云原生软件构建可持续生态系统,涉及领域包括存储、计算、编排、调度、CI/CD、DevOps、服务治理、服务网关等。
比如 Kubernetes 便是 CNCF 最具代表性的项目之一。

综上所述,如果你是一个纯粹的 .NET 团队,并且准备开发一个 GreenField(全新)的项目,可以尝试使用 .NET Aspire

  • .NET Aspire documentation (Preview)https://learn.microsoft.com/zh-cn/dotnet/aspire/

转载声明:

  • https://www.cnblogs.com/yakniu/p/17836931.html

你可能感兴趣的:(.NET,Core,跨平台,.net,云原生,.NET,Aspire,Dapr,CNCF)