<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于 Rust 編寫的 Turbopack 比 Webpack 快 700 倍,竟然比 Vite 還要快!

          共 1530字,需瀏覽 4分鐘

           ·

          2022-11-01 22:01

          作者 | Tina

          10 月 26 日,Vercel 公司正式宣布推出新的打包工具 Turbopack。Webpack 創(chuàng)建者 Tobias Koppers 于 2021 年 4 月加入該公司,牽頭了該項目。

          Turbopack 是 Vercel 公司之前一些工作的延續(xù)。在此之前,他們用基于 Rust 的 SWC 替換基于 JavaScript 的轉(zhuǎn)譯器 Babel,速度提升了 17 倍。他們還替換了 Terser,壓縮的速度提高了 6 倍,從而減少了加載時間和帶寬的使用。

          “Webpack 已被下載超過 30 億次。它已成為 Web 構(gòu)建不可或缺的一部分。但就像 Babel 和 Terser 一樣,是時候全力以赴了。我加入了 Vercel,組建了一個團(tuán)隊來構(gòu)建 Web 下一代的打包工具?!盩obias 說。

          據(jù) Vercel 首席執(zhí)行官 Guillermo Rauch 介紹,與 Webpack 一樣,Turbopack 也是開源的。

          Vercel 聲稱 Turbopack 在大型應(yīng)用中,展示出了 10 倍于 Vite 的速度,700 倍于 Webpack 的速度。在更大的應(yīng)用中,差異更加巨大 —— 通常比 Vite 快 20 倍。而且啟動速度飛快,在一個 3000 個模塊的應(yīng)用里,Turbopack 只花了 1.8 秒啟動,Vite 花了 11.4 秒。

          Rauch 說,性能改進(jìn)不僅是因為基于 Rust ,還在于“基于增量計算思想的架構(gòu)”。該團(tuán)隊借鑒了谷歌 Bazel 構(gòu)建系統(tǒng)中的一些想法,該系統(tǒng)適用于大型項目。增量方法意味著避免做重復(fù)的工作,“如果你創(chuàng)建一個增量圖,開發(fā)人員在其中進(jìn)行更改,只有受影響的圖部分會被重新計算?!?/p>

          Turbopack——目前處于 alpha 預(yù)覽階段——是“一種更好的架構(gòu),我認(rèn)為 Rust 和正確架構(gòu)相結(jié)合意味著我們至少在 10 年內(nèi)不需要改變,”Rauch 表示。

          Turbopack 是怎么來的?“Next.js 早在 2016 年就開始使用 Webpack 作為組件,”他說。“我們可能是 Webpack 的最大用戶。我們在開始時和 Webpack 創(chuàng)建者 Tobias 聊了很多,因為當(dāng)時我們有像沃爾瑪這樣的客戶,有超過 250 名工程師在 Next.js 代碼庫上工作,分享一些關(guān)于編譯過程的反饋。我們意識到 JavaScript 和 TypeScript 代碼的數(shù)量增長如此之快,以至于超出了基于 JavaScript 的工具和架構(gòu)的能力。Tobias 也從未想過該工具會得到如此廣泛的采用。”

          Webpack 面向單頁應(yīng)用程序 (SPA) ,“但我們不是,因此我們改變了 Webpack 的默認(rèn)設(shè)置。”當(dāng) Koppers 加入 Vercel 時,“他帶來了 10 年的專業(yè)知識,見證了這件事情的發(fā)展,”Rauch 說?!八庾R到架構(gòu)和運行時的所有缺陷。因此,Tobias 成為了 Rust 專家?!盩urbopack 一個有趣的特性是,多虧了 Rust,它可以編譯成 WebAssembly 并在瀏覽器中運行。

          “Turbopack 旨在成為 Webpack 的直接替代品,Next.js 是它的第一個客戶,”Vercel 首席技術(shù)官 Malte Ubl 說,“隨著時間的推移,我們計劃針對所有開發(fā)者用例繼續(xù)迭代和改進(jìn) Turbopack?!?/p>

          延伸閱讀:
          https://vercel.com/blog/turbopack
          https://devclass.com/2022/10/25/webpack-founder-debuts-rust-based-turbopack-that-is-700x-faster/

          瀏覽 31
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩大香蕉在线免观网 | 国产黄色一级大片 | 美利坚一区二区三区 | xxx久久久 | 婷婷五月综合网 |