JavaScript、TypeScript執行環境Deno釋出最新版本1.26,這個版本的更新重點除了效能提升外,同時也改進Node.js與NPM的相容性。官方預告,他們內部一直進行的效能改進工作,透過解決瓶頸減少延遲和處理開銷,近期將會公開完整成果。

但和1.24.3版本相比,Deno 1.26在效能改進部分,已經有一些初步的進展,像是將文字編碼到現有的TypedArray中,小型負載的最大吞吐量提升至5倍,較大的有效負載則提高到30倍,而且同步寫入Deno.writeFileSync()速度也提高達1.44倍,非同步寫入Deno.writeFile()的速度也有小幅度提升1.15倍。

之前因為官方改變Deno文字解編碼的方法,導致CSV解析效能下降,但現在官方著手進行改進,在基準測試中,這個版本在Mac上有1.36倍的效能提升,Linux也有加速1.19倍。另外,現在沒有查詢字串的URL解析速度提高至2.27倍,對於具有多個查詢字串參數的複雜URL,解析速度也提高了1.37倍。

開發團隊對Deno的檔案系統操作進行諸多改進,與1.24.3版本相比,許多檔案操作效能都有不同幅度的提升(下圖),在MacOS上,Deno.copyFileSync會盡可能使用APFS寫入時複製這個系統呼叫,以取得最佳化策略。

圖片來源/Deno Land

Deno 1.26在Node.js相容層中,添加了幾個之前不被支援的API實作,此外,整個相容層的測試套件已經更新,以前測試套件僅支援Node.js 16.13.0,現在已經能夠相容Node.js 18.8.0,官方解釋,這項工作是為了Node.js 18會在10月進入長期支援做準備。

Deno中的Node.js串流實作,已經更新使用readable-stream@4.1.0 NPM模組,這項更新將讓Deno能夠更好地跟上重大更新。Deno在這個版本添加對快取API的支援,該API讓開發者可以快取請求/回應物件,開發團隊提到,這個功能在動態生成回應時很有幫助,可以讓開發者快取GET請求的回應,並從快取中對類似請求提供回應。Deno 1.26也附帶了最新的TypeScript穩定版4.8。

熱門新聞

Advertisement