news 2026/7/6 20:19:25

Rust版Bun1.4之前, 盘点Bun1.3新特性

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Rust版Bun1.4之前, 盘点Bun1.3新特性

40岁了,最近再学bun和ai。

Bun 1.3.14 上个月发了。

这是 1.3 系列的收官版。

1.3 这个版本线从发布到现在。

我看完 changelog。

就一个感受。

Bun 设计的API是真优雅 真简单。

今天就掰开讲讲。

一、SQL 客户端内置

以前连数据库。

得装 mysql2 或 pg。

还得自己写连接池。

代码又臭又长。

import{MySQLClient}from"bun";const db=new MySQLClient({host:"127.0.0.1", port:3306, user:"root", password:"123456", database:"shop",});constusers=await db.query("SELECT id, name FROM users LIMIT 10");console.log(users);

Bun 1.3 自带 MySQL 客户端。

零依赖。

直接 import 就能用。

Prepared statement 也支持。

防 SQL 注入。

也省心了。

AI 写代码也省事。

不用纠结选 mysql2 还是 pg。

直接用 Bun 自带的就行。

二、Redis 客户端内置

缓存谁家不用。

以前 ioredis 是标配。

代码一堆 callback。

看着就头疼。

import{redis}from"bun";await redis.set("order:1001","已支付");const status=await redis.get("order:1001");console.log(status);

Bun 把 Redis 客户端也内置了。

API 简单。

直连服务端。

Pipelining 也支持。

性能比 ioredis 还快一点。

不信你压测看看。

三、S3 文件操作

上传文件老写 SDK。

minio-js、aws-sdk。

代码又长又难懂。

import{s3}from"bun";const f=s3.file("images/avatar.png");await f.write(Bun.file("./avatar.png"));const buf=await f.arrayBuffer();console.log(buf.byteLength);

Bun 1.3 把 S3 也整进来了。

文件对象语义。

跟本地 fs 一样。

读写都简单。

不夸张说。

S3 操作这块省一半代码。

四、HTTP/2 默认开启

Node 一直 HTTP/1.1。

高并发下头部阻塞。

HTTP/2 才是未来。

Bun.serve({port:3000, fetch(req){returnnew Response("HTTP/2 ready");},});

Bun 1.3 默认就开 HTTP/2。

多路复用。

性能提升明显。

不用配置。

// HTTP/2 服务端推送示例 Bun.serve({port:3000, fetch(req){returnnew Response(`<html><scriptsrc="/app.js"></script></html>`,{headers:{"content-type":"text/html"}});},});

压测对比一下。

你就知道差多少。

五、bundler 大提速

前端项目打包。

慢得让人抓狂。

await Bun.build({entrypoints:["./src/main.tsx"], outdir:"./dist", target:"browser", minify: true,});

Bun 的 bundler。

底层是 Zig 写的。

打 React 项目。

比 webpack 快 10 倍不止。

这话真不夸张。

我自己测过。

一个 3MB 的项目。

打包就几百毫秒。

开发体验拉满。

六、workspace 终于有了

monorepo 现在是主流。

以前得 yarn workspaces。

还得 pnpm 配置。

{"name":"my-app","workspaces":["packages/*"]}

Bun 1.3 原生支持 workspace。

一个配置文件搞定。

buninstall

依赖自动 link。

不用再装一堆工具了。

七、test runner 更稳

测试也得写。

Bun 自带 test。

import{test,expect}from"bun:test";test("两数相加",()=>{expect(1+2).toBe(3);});test("异步加法", async()=>{constv=await Promise.resolve(5);expect(v).toBe(5);});

API 兼容 jest。

老代码迁过来。

改改 import 就行。

跑得还贼快。

八、前端 dev server 完善

写前端老启 vite。

Bun 直接当 dev server。

importindex from"./index.html";Bun.serve({port:3000, routes:{"/":index,}, development: true,});

HTML 也能 import。

热更新自带。

省了一个 vite。

九、HTML imports 新玩法

Bun 1.3 还有个狠活。

HTML 文件能直接 import。

importhtml from"./page.html";console.log(html);

HTML 里的 JS、CSS。

Bun 自动提取。

打包时处理。

不用配 loader。

这波真省事。

展望:Rust 重构版

说完了 1.3。

再说说后面。

1.3.14 已经是 1.3 的句号。

下一个大版本。

就是 Rust 重构版了。

Bun 官方在重写引擎。

Zig 那部分。

打算换 Rust。

消息一出。

圈内就炸了。

为啥要换?

性能是核心。

Rust 的生态更成熟。

AI 也更擅长写 Rust。

// Rust 重构版假想代码 Bun.serve({port:3000, async fetch(req){const data=await Bun.redis.get("count");returnResponse.json({count: Number(data)});},});

AI 写 Rust 代码。

训练数据多。

生成质量稳。

我用 Cursor 写 Bun 项目。

AI 给的代码。

八九不离十。

这才是换 Rust 的真原因。

AI 时代的变化

提个客观现象。

现在写代码的逻辑变了。

以前是:

我想清楚 → 手写 → 调试。

现在是:

我想清楚 → AI 生成 → 我审 → 部署。

效率提升巨大。

但门槛也变了。

你得会审。

不会审的人。

AI 写啥就是啥。

早晚出大问题。

写在最后

Bun 1.3 把生态补齐了。

SQL、Redis、S3。

都内置。

真能干活了。

接下来就是 Rust 重构版。

性能又要起飞。

你还在用 Node?

建议试 Bun。

迁移成本不大。

AI 帮忙更快。

我这 40 的老开发。

都在跟。

你们也试试看。

评论区聊聊。

你用 Bun 了吗。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 19:51:24

AI Agent 的元认知:自我监控与能力边界识别

AI Agent 的元认知&#xff1a;自我监控与能力边界识别当 Agent 不仅能执行任务&#xff0c;还能清楚地知道自己"知道什么"和"不知道什么"&#xff0c;它才真正具备了智能系统的自我认知能力。本文深入探讨 AI Agent 中的元认知机制&#xff0c;从理论定义…

作者头像 李华
网站建设 2026/7/1 21:00:28

2026手机抠图软件实用指南:人像物品工具功能与免费使用方式梳理

随着日常修图、电商制图、短视频素材制作需求增多&#xff0c;不少人会寻找适配手机的图像抠取工具&#xff0c;不同使用需求对应的软件、小程序操作逻辑、收费规则、画面处理效果存在明显差别。2026 年市面上可正常使用的抠图工具分为三类&#xff1a;综合修图类手机 App、专项…

作者头像 李华
网站建设 2026/7/1 21:00:17

基于Python的手机销售数据分析大屏可视化系统

第1章 绪论 1.1 课题背景 手机市场竞争越来越激烈的时候&#xff0c;销售数据的深入分析以及实时呈现就成了企业决策的关键。手机销售数据包含用户行为、市场趋势等复杂的信息&#xff0c;并且数据量很大&#xff0c;这就给数据分析工具提出了更高的要求&#xff0c;传统的…

作者头像 李华
网站建设 2026/7/1 21:01:16

日增 1.57 万家“一人公司“的当下,我给四十岁的自己写了一封信

写在前面 前两天&#xff0c;在出差的路途上&#xff0c;读了一篇由南方周末写的&#xff0c;标题为《日增 1.57 万家:"一人公司"大爆发,有人赚到钱了吗?》的文章&#xff0c;感兴趣的朋友可以通过文章末尾的链接&#xff0c;或者自行搜索后&#xff0c;读一下。 …

作者头像 李华
网站建设 2026/6/30 16:58:21

Windows系统文件aadtb.dll丢失找不到问题解决

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华