Bun 是采用 Zig 语言编写的高性能 “全家桶” JavaScript 运行时,官方称其为 "all-in-one JavaScript runtime"。
所谓 "all in one",是因为 Bun 提供了打包、转译、安装和运行 JavaScript & TypeScript 项目的功能,内置原生打包器 (native bundler)、转译器、task runner、npm 客户端,以及 fetch
、WebSocket
等 Web API。
最近 Bun 的更新比较频繁,6 月才过一半就发了三个新版本。
昨天发布的 Bun 0.6.9 进一步优化了性能,包括降低Bun.serve()
的内存使用。据称使用 Bun 的 HTTP 服务器发送字符串可使用更少的内存。开发者提供的数据对比如下(用 12 MB 的字符串响应 1000 个请求后):
- Bun: 60 MB ram
- Deno: 425 MB ram
- Node: 1414 MB ram
另外还降低了 bun install, module imports 和 crypto hashing 的内存占用。
其他变化包括修复 CommonJS modules 的崩溃问题,以及其他错误修复。
详情查看发布公告。