Skip to content

Node(TS) · 03 框架与生态 ​

Express / Nest / Fastify 等,默认按 TypeScript 来写。

1. Express ​

  • 简单直接,中间件模型清晰
  • 适合 BFF、小 API、Electron 旁路服务

判断: 小而美场景的默认选择。生态中间件多,也要自己拼结构(目录、错误处理、校验)。

2. Fastify ​

  • 更偏性能与 schema 校验
  • 适合对延迟敏感、仍想保持轻量的服务
  • 与 JSON schema / TypeBox 结合时,契约感接近 FastAPI

3. NestJS ​

  • 模块、DI、结构像「Spring 味」
  • 适合 Node 侧也要多人协作、边界清晰的中型后端

判断: 真要做中大型 Node 域再上;别小脚本套 Nest(启动与概念成本不值)。

有 Java Spring 经验时,Nest 的模块/提供者概念好迁移;仍要记住:运行时是 Node,事务与生态深度不如 Spring + JDBC 熟路。


4. 实时与配套 ​

需求常见选择
WebSocketws、Socket.IO(要房间/降级时)
校验zod、class-validator(Nest)
ORMPrisma / TypeORM / 轻封装 SQL——能不用重 ORM 就不用
日志pino / winston;结构化 + request id
HTTP 客户端undici / axios;超时必设

5. 选择表 ​

场景选择
Vue/Electron 配套 APIExpress 或 Fastify
Node 侧中型业务NestJS
实时Socket.IO / ws(按复杂度)
核心业务数据权威仍在 Java

原则: Node 框架为前端与桌面服务;不要在 Node 里复制一整套域规则。

下一篇:04 工程实践