后台框架圈又吵起来了。这次的主角是 Elysia 和 Hono------两个都以"快"著称的 TypeScript 后端框架。一个是 Bun 官方背书、深度绑定 Bun 底层的天生性能怪;一个是横跨 Bun / Node / Cloudflare Workers 的通用型选手。
但"快"这个字,在不同环境、不同业务场景下含义完全不同。网上流传最广的说法是"Elysia 性能碾压 Hono",这个结论在纯内存压测下确实成立,可一旦落到真实业务,差距会瞬间被 IO 抹平,甚至 Hono 会在 Node 环境下反超。
这篇文章用 2026 年实测的 wrk / oha 压测数据,把这件"到底谁更快"的事讲明白。
一、先看结论,别急着站队
不管后面多少张表格,你先记住四句话:
- Bun 环境裸压测(无业务逻辑) :Elysia 性能 ≈ Hono 的 1.8~2 倍,差距巨大;
- Bun 真实业务场景(带校验、鉴权、DB 查询) :二者差距缩小至 10%~20%,绝大多数业务感知不到区别;
- Node.js 环境 :Hono 性能反超 Elysia,Elysia 那些 Bun 专属优化在 Node 下全部失效;
- 边缘平台(Cloudflare Workers):仅 Hono 可用,Elysia 根本无法部署。
一句话版本:Elysia 是"把单机性能榨到极致"的工具,Hono 是"一套代码到处跑"的工具。 它们赢在不同维度,取决于你的部署环境。
二、裸性能跑分:HelloWorld 与 JSON 返回的真实差距
先看最能拉开差距的数据。以下跑分来自单核 wrk / oha 压测,区分了 Bun、Node、边缘三种环境。
2.1 Bun 1.3 环境(最能拉开差距的地方)
| 场景 | Elysia 1.4 RPS | Hono 4.x RPS | 差距 |
|---|---|---|---|
| 纯路由 HelloWorld | 245万~260万 | 115万~125万 | Elysia 快约 110% |
| 返回 JSON 对象 | 19.5万~21万 | 15.5万~17.5万 | Elysia 快约 25% |
| 带 Schema 校验(后端最常用) | 71,202 | 62,207 | Elysia 快 14% |
| WebSocket 长连接并发 | 百万级并发稳定 | 60 万左右并发上限 | Elysia WS 优势明显 |
延迟表现(JSON 接口):
- Elysia:平均 0.45ms ,P99 延迟 1.76ms
- Hono:平均 0.54ms ,P99 延迟 2.34ms
Elysia 不仅吞吐量更高,长尾延迟也更稳。P99 更低的含义是:在高并发下,Elysia 的抖动更小,不会有一小撮请求被拖到几毫秒甚至几十毫秒。
这里有个特别值得注意的规律------场景越简单,差距越大:
- 纯路由 HelloWorld:差 110%
- 返回 JSON:差 25%
- 带上 Schema 校验:差 14%
差距随着业务复杂度一路缩小。这个规律在后面真实业务章节会再次验证。
2.2 Node.js 24 环境(生产环境最常用)
| 框架 | RPS | 说明 |
|---|---|---|
| Hono | 35 万 | Node 下远超 Fastify(23 万) |
| Elysia | 28 万 | 失去 Bun.serve 底层优化,性能下滑,弱于 Hono |
数据非常说明问题:Elysia 的 70% 优势,在 Node 下直接变负。这不是"Hono 变强了",而是 Elysia 赖以制胜的底层优势被环境抽走了。
2.3 边缘环境 Cloudflare Workers
| 框架 | RPS | 说明 |
|---|---|---|
| Hono | 1.3 万~1.4 万 | 正常运行 |
| Elysia | 无法部署 | 兼容性报错 |
边缘这一档,Elysia 连参赛资格都没有。它深度绑定 Bun 运行时,无法跑在 CF Workers 上。
三、为什么 Bun 下 Elysia 更快?三层底层原理
从跑分理解到原理,是这篇文章的关键。Elysia 的优势不是玄学,来自三层硬设计:
3.1 深度绑定 Bun 底层,去掉了抽象层
Elysia 直接封装 Bun.serve,没有额外的 Web Standard 抽象层。路由函数在启动时被编译为优化函数,路由匹配的开销被压到极低。WebSocket、文件读写、SQLite 全部复用 Bun 原生的高性能 API。
一句话:Elysia 就是为 Bun 量身定制的,它不跟抽象层谈恋爱。
3.2 Hono 的跨平台兼容,是拿性能换的
Hono 遵循标准的 Fetch Request / Response 规范来实现,用一层抽象同时兼容 Bun / Node / Cloudflare Workers。这一层"跨平台兼容层"本身就带来约 15% 的固定性能损耗。
Hono 的 RegExpRouter 路由匹配已经很快,但它依然比 Elysia 的原生绑定模式多一层开销。通用性从来不是免费的。
3.3 校验体系的原生化差异
- Elysia:类型推导 + 校验一体化,校验逻辑和路由绑定后一起编译
- Hono:依赖 Zod / Valibot 等外置校验库,多一次函数调用开销
这正是为什么"带 Schema 校验"时 Elysia 仍有 14% 的优势------校验本身也被吃进了它和 Bun 的优化链路里。
四、真实业务场景:99% 开发者的实际情况,差距几乎消失了
记住一个反直觉的结论:跑分差距很大,但只要接口里塞进任何一点业务逻辑,差距就会被瞬间抹平。
真实接口的开销大头根本不在框架里,而在这些地方:
- 数据库查询(MySQL / PG / Drizzle)耗时 5~20ms
- JWT 鉴权、签名校验
- 文件上传、缓存读取、复杂 JSON 序列化
4.1 实测表现
- 普通 CRUD 接口 :Elysia 仅比 Hono 快 8%~15%,用户完全体会不到;
- 接口瓶颈在数据库 / Redis / 第三方请求时 :两个框架性能几乎没区别------耗时全部卡在 IO,框架本身微秒级的开销可以忽略;
- 只有这 3 类场景,Elysia 的优势才能真正发挥 :
- AI SSE 流式输出、流式对话接口;
- IM 系统、大量 WebSocket 长连接服务;
- 纯内存网关、缓存服务(几乎不查数据库)。
换句话说,凡是在等 IO 的地方,框架的选择对性能毫无意义。 性能的差距只出现在"CPU 密集且几乎不走 IO"的场景里。
五、冷启动性能:Serverless 场景的分水岭
| 框架 | 打包体积 | 冷启动表现 | 边缘 Serverless |
|---|---|---|---|
| Hono | 约 14KB | 边缘函数毫秒级唤醒 | 支持 |
| Elysia | 约 22KB | Bun 本地启动很快 | 不支持 |
结论清晰:做云函数、边缘部署,Hono 冷启动更强。 Elysia 的体积更大,且无法跑在边缘 O。
六、多维度性能对生存图(一张表看清胜负)
| 性能维度 | 胜出方 | 原因 |
|---|---|---|
| 裸 HTTP 吞吐量 | Elysia | Bun.serve 原生绑定 |
| 带校验业务接口 | Elysia(+10%~15%) | 校验一体化编译 |
| Node.js 运行性能 | Hono | Bun 优化失效 |
| WebSocket 高并发 | Elysia | 复用 Bun 原生 WS |
| SSE 流式推送 | Elysia | 底层流式更高效 |
| 边缘冷启动速度 | Hono | 不可部署边缘 / 无体积优势 |
| 高并发下延迟稳定性 | Elysia | P99 更低,抖动更小 |
| 内存占用 | Elysia | Bun 原生优化 |
这张表的潜台词是:Elysia 的胜利集中在一个象限里------Bun 环境下的性能型场景;Hono 的胜利则遍布所有环境、所有"够用就好"的普通业务。 这是一个"精攻一处"与"全面覆盖"的选择,不是一个"谁更好"的选择。
七、结合性能的选型建议
🚀 选 Elysia(利用高性能)
- 部署环境固定只用 Bun,且永远不会迁到 Node、Cloudflare Workers;
- 业务以 WS 长连接、AI 流式接口、网关转发为主;
- 想榨干单机性能,节省服务器成本。
🌍 选 Hono(性能够用 + 通用性优先)
- 主力 Node 部署,且未来可能切换 Bun、边缘函数;
- 普通后台 CRUD、管理系统、BFF 层(瓶颈在数据库,框架性能无关紧要);
- 希望一份代码多处部署(本地 Bun + 线上 CF 边缘)。
八、误区澄清:关于 Elysia 与 Hono 的流行说法
误区一:Elysia 全方位吊打 Hono
事实: 只有 Bun 环境下、纯内存高并发场景 Elysia 才有巨大优势,普通业务差距很小。
误区二:Elysia 在 Node 里也应该很快
事实: 在 Node 下 Elysia 不仅变慢,还会丢 WebSocket、原生校验优化等特性,整体表现不如 Hono。
误区三:性能不够用,必须上更快的框架
事实: 大部分互联网业务日千万请求以内,Hono + Bun 的性能完全过剩,强行上 Elysia 收益极低、还绑死了环境。
写在最后
Elysia 和 Hono 的对比,本质不是"谁更快",而是"你在哪条环境边界内开发、想不想为通用性让渡一点性能"。跑分用来理解框架的天花板,业务场景才决定框架的性价比。
如果你想在 Bun 上做 AI 流式接口 / IM / 高并发网关,Elysia 值得赌一把;如果你的业务是常规 CRUD、心思随时准备迁 Node 或边缘,Hono 已经是正确答案,性能百分百够用,且不用为它锁死环境。
原创技术博客 · 开源项目分享 · AI全栈创作社区 idao.fun