.NET 5.0 Preview 2發佈解析

来源:https://www.cnblogs.com/shanyou/archive/2020/04/04/12633259.html
-Advertisement-
Play Games

2020年4月2日微軟.NET 團隊的項目經理 Richard 在博客上 發佈了.NET 5 Preview 2:https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-2/ ,3月16號,Scott Hunter 在博客中發 ...


2020年4月2日微軟.NET 團隊的項目經理 Richard 在博客上 發佈了.NET 5 Preview 2:https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-2/ ,3月16號,Scott Hunter 在博客中發佈了.NET 5 Preview 1 第一個預覽版發佈。https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-1/,  博文中,Scott Hunter說:“.NET Core 3 has become the fastest adopted version of .NET ever and we’ve gained another million more users in just the last year(“ NET Core 3成為有史以來最快採用的.NET版本,而僅僅在去年,我們又獲得了100萬用戶。”),也就是2周後(一個迭代)就發佈了這個新版本。這兩個版本都沒有什麼新特性,主要是整合.NET Core 3.1 和Mono功能到一起, 很多同學開玩笑的說.NET 5 這兩個版本的發佈,開發團隊都在划水,打醬油。事實肯定不是這樣的了,這兩個版本的發佈是為了在新的版本中為大家提供期待的新特性,接下來發佈的.NET 5 Preview 3將會出現很多新特性,按照一個迭代一個版本的節奏,在微軟5.19的 Microsoft Build 2020 大會上將發佈.NET 5 Preview 5,到時肯定是Scott Hunter 向大家揭開.NET 5 的廬山真面目 ,到時也會發佈Blazor RTM,正式開啟Webassembly的應用,也就是C#全棧的時代,Winform/WPF的同學就可以很輕鬆的轉移到Web上開發了,Blazor支持可以在瀏覽器中, 在移動設備上以及作為本機桌面應用程式(例如Windows 10x)運行的應用程式。

博客里談到的一點就是 RyuJIT中代碼質量改進:在Preview1 也談到這點,在這個版本里做的更多了,後面每個版本都對JIT生成的代碼進行了一系列性能改進,相信在11月正式發佈時會是一個超級好性能的開發平臺. 我們將這些類型的改進稱為"CQ"或代碼質量.在大多數情況下,這些改進也適用於為準備運行的images生成的代碼. Preview2 的性能提升方面做的非常好,而且對ARM64 的改進更多一些,有很多性能的提升是很大的,還專門寫了一篇.NET 5中的Regex性能改進:https://devblogs.microsoft.com/dotnet/regex-performance-improvements-in-net-5/。對該Regex引擎進行了一些重大改進,這些更改通常會導致吞吐量提高3-6倍,在某些情況下甚至會提高更多。

博客里另外談到一點是垃圾回收器GC的改進,不斷向著快速啟動、更小的體積和記憶體使用,更加契合雲原生時代的應用開發需求。

更重要的一點是.NET團隊開始在吃自己的狗糧,使用Azure負載平衡在.NET 5.0上運行了50%的.NET網站流量。.NET團隊很早就在.NET Core 3.0和3.1做過類似的事情。通過將流量分流為50/50,我們可以確保在不斷獲得性能數據的情況下5.0持續變得更好。我們可以訪問.NET網站 ,通過瀏覽器刷新的形式交替看到Power by .NET Core 3.1.3和Powered by .NET Core 5.0.0-preview.2.20160.6:

image

image

園子里已經有同學翻譯了這幾篇文章:


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...