.NET Aspire 第二预览版发布
上周,微软宣布推出 .NET Aspire 第二预览版。该版本在仪表盘、托管、组件、Dapr 等方面带来了多项改进。.NET Aspire 是微软和 .NET 团队在去年 11 月的 .NET Conf 活动上宣布的一个新的云原生开发堆栈。
.NET Aspire 简介
.NET Aspire 是一个为开发者和团队提供的一体化堆栈,旨在简化云应用的构建、配置、部署、测试、运行和监控。它是专为 .NET 生态系统设计的云原生开发堆栈,帮助开发者构建具有弹性、可观察性和可配置性的云原生应用。.NET Aspire 包含一组经过增强的组件,默认集成了服务发现、遥测、弹性和健康检查等功能。
第二预览版的改进
仪表盘更新
- 资源页面统一:所有资源类型(如项目、可执行文件和容器)的详细信息统一整合到仪表盘的“资源”页面。
- 可停靠的详细信息面板:新的设计提升了用户体验,提供了更直观的界面,显示更多相关信息,如资源的环境变量、结构化日志或跟踪跨度的详细信息。
- 控制台日志:各种资源类型的控制台日志现在可以通过单一的“控制台日志”页面访问。在结构化日志视图中,现在包含日志类别名称以便更好地分类。此外,对其他资源和开发服务的出站请求现在显示资源或服务名称,而不是 URL,提高了清晰度和可追溯性。
托管和编排改进
- 容器启动参数配置:现在支持通过
IResourceBuilder<ContainerResource>.WithArgs方法配置容器启动时的参数。 - 服务发现配置:容器和可执行文件现在可以通过端点引用其他资源,使用
WithServiceBinding方法配置服务发现。 - 灵活的项目结构:引入了无需
<ProjectReference />即可添加项目的功能,为项目结构提供了更大的灵活性。
服务发现和端口配置
- 现有 URI 端点引用:资源现在可以引用现有的 URI 端点进行服务发现配置。
- 项目端口一致性:项目现在一致使用其启动配置文件中指定的端口进行托管,无论是否使用副本。
- Node.js 应用支持:现在可以通过
AddNodeApp和AddNpmApp方法将 Node.js 应用包含在 Aspire AppHost 项目中。新的 Aspire with Node.js 示例展示了如何将 Node.js 应用的 OpenTelemetry 跟踪数据导出到 Aspire 仪表盘。
组件包更新
- 组件图标:组件包现在具有独立的图标,便于视觉识别。
- 新增组件:新增了 MySqlConnector 和 MongoDB 组件。
- Azure SDK 组件:Azure SDK 组件现在默认启用分布式跟踪,但不包括服务总线组件。
部署工具改进
- Azure Developer CLI:Azure Developer CLI 进行了改进,提升了部署体验。
- Aspir8:社区开发的工具 Aspir8,专门用于将 .NET Aspire 应用部署到 Kubernetes。
Dapr 集成改进
- Dapr 组件支持:第二预览版引入了对 Dapr 所有组件的一流支持,提升了整体开发体验。
- Dapr 应用 ID 简化:Dapr 边车的 ID 不再需要显式指定,简化了配置,但开发者仍可以显式设置应用 ID。
- Azure 容器应用支持:Azure Developer CLI 现在支持将使用 Dapr 的 .NET Aspire 应用部署到 Azure 容器应用(ACA)。
未来计划
.NET Aspire 团队 计划每月发布一个新的预览版,预计在 2024 年第二季度发布稳定的 8.0 版本。这一月度发布节奏旨在为开发者提供定期更新,引入新功能和优化。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。