微软net平台前景(微软.NET7)
IT之家 11 月 9 日消息,当地时间 11 月 8 日星期二,微软 .NET Conf 在线活动正式开幕。作为微软开源、跨平台开发平台,.NET 7 现已推出首个正式版,这也代表微软的“统一工作”终于完成。
微软表示,使用 .NET 7 可以轻松地将 .NET 7 项目容器化,在 GitHub 操作中设置 CI / CD 工作流,并实现云原生可观察性。它拥有一个广泛的.NET 包生态系统,其中包括超过 330000 个包。
值得一提的是,.NET 7 是标准期限支持 (STS) 版本,将支持 18 个月而非 36 个月。在整个 .NET 7 版本中,目前有着超过 8900 名贡献者做出了 28k 代码贡献。
据介绍,.NET 7 的新功能包括
-
ASP.NET Core 7
-
Entity Framework Core 7
-
.NET MAUI
-
Windows Forms
-
WPF
-
Orleans 7
.NET 7 优化主要集中在:
统一的基类库(Base Class Library - BCL)、新的 TFM、对 Arm64 的原生支持、Linux 上增强的 .NET 支持
简单来说,如果使用 .NET 7,开发人员只需学习一次即可通过一个 SDK、一个运行时、一组基础库重复构建多种类型的应用程序(云、Web、桌面、移动、游戏、IoT 和 AI)。
此外,微软还优化了在 Arm 机器上的性能,包括估算 L3 缓存大小、引入了 LSE 原子指令、优化使用内在函数的库。
核心数 | L3 缓存大小 |
---|---|
1~4 | 4MB |
5~16 | 8MB |
17~64 | 16MB |
65 | 32MB |
IT之家了解到,.NET 6 包含在 Ubuntu 22.04 (Jammy) 中,可以使用 apt install dotnet6 命令安装。此外,还有一个优化的、预构建的、开箱即用的超小型容器镜像。
dotnet%dockerrun--rmdotnet-chiseled4242,d,d424242,adPPYb,42,adPPYba,MM42MMM8b,dPPYba,,adPPYba,MM42MMMa8"`Y42a8""8a4242P'`"8aa8P_____42428b428bd84242428PP42"8a,,d42"8a,,a8"42,4242"8b,,aa42,`"8bbdP"Y8`"YbbdP"'"Y4284242`"Ybbd8"'"Y428.NET7.0.0-preview.7.22375.6Linux5.10.104-linuxkit#1SMPPREEMPTThuMar1717:05:54UTC2022OSArchitecture:Arm64ProcessorCount:4TotalAvailableMemoryBytes:3.83GiB
其他方面,除了 x64 架构(64 位 Intel / AMD)、ARM64(64 位 ARM)和 s390x(64 位 IBM Z)外,.NET 现在也可用于针对 RHEL 的 ppc64le(64 位 IBM Power)架构 8.7 和 RHEL 9.1。
在现代化方面,.NET SDK 已经支持输出容器图像,微软还将带来持续的性能改进。
如果你现在使用的是.NET Core 版本,微软 .NET 7 可直接进行升级,如果您当前维护的是.NET Framework 版本,微软则提供了一些令人信服的迁移理由。
.NET 升级助手包含更多分析器、代码修复程序,以及对更多应用程序类型的升级支持,可帮助开发者更轻松地升级 .NET 7 应用程序组合,减少升级应用的工作量。此外,.NET 7 更易于构建和部署分布式云原生应用。
性能
-
. NET 7 有多项性能优化,比如:
-
堆栈更换 (On Stack Replacement - OSR),提高了启动时间。
-
配置文件引导优化 (Profile-Guided Optimization - PGO)
-
原生 AOT ,主要优势在于启动时间、内存使用、访问受限平台(不允许 JIT)以及磁盘空间更小。
此外,微软还阐明了一些.NET 7 中的中断性变更内容,开发者可参阅官方文档。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com