Node 服务端框架选型
前端工程师接触 Node 服务端,最常见的起点不是“我要精通后端”,而是项目里已经需要一层 API、BFF、代理层,或者脚本服务。
四个常见框架怎么选
| 框架 | 适合场景 | 优点 | 代价 |
|---|---|---|---|
| Express | 小型服务、原型验证、入门学习 | 简单直接、资料最多 | 约束较少,项目大了容易散 |
| Koa | 想保留灵活度,同时写法更现代 | 中间件模型清晰、async/await 体验好 | 生态不如 Express 广 |
| Fastify | API 服务、性能敏感场景 | 性能好、Schema 驱动、类型体验不错 | 部分生态资料较少 |
| NestJS | 中大型团队、企业级项目 | 架构完整、约束清楚、模块化强 | 上手成本更高,轻项目容易显重 |
更直接一点的判断
- 先搭一个小服务:Express 最省事
- 想要现代化但保持灵活:Koa 可以优先看
- 想兼顾性能和类型体验:Fastify 很值得
- 项目复杂、团队多人协作:NestJS 更稳
前端视角最该关注什么
- 路由和中间件怎么组织
- 鉴权和错误处理怎么统一
- 请求校验和返回结构怎么收口
- 部署以后日志、进程、代理怎么配
这也是为什么这组内容里把 Nginx 和 pm2 放在一起看会更顺。服务真正跑起来以后,它们很快就会变成日常问题。
补充一点:Bun 不放在这里和这些框架横向比较,不是因为它不重要,而是因为它更适合先当 runtime 和工具链来看,再判断是否承接具体服务。