Bun 是什麼?
Bun 是像 Node.js 或 Deno 一樣的現代 JavaScript 執行環境,使用 Zig 語言(Node.js -> C++, Deno -> Rust),JavaScriptCore 引擎(Safari),(Node.js 和 Deno 使用的是 V8 ,Chromium 使用的引擎)開發優點:
- 速度快
- 預設支援 TypeScript
- 使用簡單,內建套件管理器、測試工具
- 相容於現有 Node.js 和 npm 的套件
速度對比(以下資料取自 Bun 官網和 Bun Github 頁面介紹):
- 啟動速度比 deno 快兩倍,比 node.js 快 4.5 倍
- 套件管理器的安裝速度 bun install 比 npm install 快 20 到 100 倍
- bun run 只要 6 毫秒,而 npm run 需要 170 毫秒
- http 每秒請求數: bun 48,936 node 16,288 deno 15,786
- 大量資料下的每秒查詢次數: bun (sqlite) 60.24 node (sqlite3) 23.28 deno (x/sqlite) 9.55
- 每秒操作次數: bun (ffi) 13,080,444 node (napi) 6,870,963 deno (ffi) 5,736,247
Bun 目前還是在早期預覽版,在 Github issue 上有一片的 bug,包括記憶體流失和程式卡死沒有回應的錯誤,不建議在正式環境上使用
註: 參考資料:
Bun 官網
Bun 的 Github 頁面
Next.js 太慢了,所以他做了包子?Jarred Sumner 和 Bun 的故事
留言
張貼留言
如果有任何問題或建議,都歡迎留言或來信: a@ruyut.com