Egg 是阿里出品的企业级 Node 框架,解决的是「团队协作下如何高质高效开发」这一命题。本专题把它放进 Node 生态横向对比,帮助你判断它是否适配你的团队与业务。
前置知识:建议先读 Egg 基础、核心概念 与 插件开发与中间件进阶。
| Egg 主张 | 说明 | 落地机制 |
|---|---|---|
| 约定优于配置 | 统一目录/命名,新成员零学习成本上手 | app/controller、app/service 等约定目录 |
| 多进程模型 | Master/Worker/Agent 开箱即用 | 内置 cluster 封装 + IPC |
| 插件化 | 能力即插件,按需组合 | egg-* 插件体系 |
| 框架可扩展 | 支持基于 Egg 二次封装业务框架 | Agent 与应用、框架层继承 |
| 内置工程化 | 有测试、部署、环境约定 | egg-mock、egg-scripts |
| 维度 | Express | Koa | Egg | NestJS | Midway |
|---|---|---|---|---|---|
| 基准 | Express 原班 | 极简洋葱 | 基于 Koa | 装饰器/DI | 装饰器/DI(基于 Koa) |
| 路由 | 内置 | @koa/router | 约定式 + 中间件 | 装饰器式 | 装饰器式 |
| 多进程 | 自配 | 自配 | 内置 | 自配 | 自配 |
| TS 支持 | 弱 | 弱 | 一般 | 强 | 强 |
| 约定规范 | 少 | 少 | 多而强 | 中 | 中 |
| 企业开箱 | 需组合 | 需组合 | 强 | 强 | 强 |
| 学习成本 | 低 | 低-中 | 中(约定多) | 中高 | 中高 |
✅ 企业内部系统、管理后台、中台服务,重视协作规范 ✅ 需要多进程、插件、测试、部署等「开箱工程化」 ✅ 团队以 JS 为主、期望中文文档与成熟生态 ✅ 从 Koa/Express 演进、需要重构为统一规范架构
⚠️ 若你:
Egg 的价值不只是代码,而是一套「约定」,体现在:
config.prod / config.test)约定清晰;egg-mock 让单元/集成测试有规范模板。这使得新人上手、多人协作、交接维护的成本显著下降。
egg-graphql 插件。egg-gateway 生态或自定义)。Egg 最大的资产是「约定 + 多进程 + 生态」,特别适合需要强协作规范、以企业内部业务为主、JS 技术栈的团队。相比裸写 Koa/Express,它以「牺牲一点自由度」换来了「工程化与一致性」的大幅提升。