介绍
VextJS 是什么?
VextJS 是一个现代化的 Node.js Web 框架,专为构建高性能 RESTful API 而设计。它提供 Adapter 架构(底层 HTTP 框架可替换)、插件系统、约定式路由、服务自动注入、声明式参数校验、OpenAPI 文档自动生成 等企业级特性,让你专注于业务逻辑。
核心特性
🔌 Adapter 架构
VextJS 的底层 HTTP 处理层是可替换的。内置 5 种 Adapter:
切换 Adapter 仅需修改一行配置,业务代码零改动:
⚡ 极致性能
基准测试(JSON 响应场景,5 轮中位数):
Vext 的开销包含:body parser、response wrapper、请求/响应抽象、AsyncLocalStorage 上下文、中间件链执行器等完整功能。
🛡️ 声明式参数校验
集成 schema-dsl,在路由 options 中声明校验规则,自动验证 + 自动生成 OpenAPI 文档:
🧩 插件系统
通过 definePlugin() 扩展框架能力,支持完整生命周期钩子:
🔥 开发体验
vext dev— 文件监听 + 智能热重载(Soft Reload Tier 1/2 + Cold Restart Tier 3)vext build— esbuild 极速构建,TypeScript 零配置vext create— 交互式脚手架,支持 5 种 Adapter 选择- OpenAPI / Scalar — 基于路由
docs+validate自动生成,访问/docs查看(内置 Try it out 交互式测试)
🏢 企业级特性
- Cluster 多进程 —
ClusterMaster+ Worker 心跳 + Rolling Restart + 优雅关闭 - 国际化 (i18n) — 语言包自动加载,错误消息多语言
- 内置限流 — 基于
flex-rate-limit,支持 IP / 用户维度 - 请求追踪 — AsyncLocalStorage 贯穿 route → service,自动注入 requestId
- MonSQLize 插件 — 内置数据库插件,条件加载零开销
设计理念
1. 约定优于配置
遵循固定的项目结构约定(src/routes/、src/services/、src/config/),框架自动扫描加载,无需手动注册。
2. 分层架构
- 路由 handler 只负责参数提取和响应返回
- 业务逻辑集中在 service 层,通过
app.services.xxx访问 - service 不感知 HTTP 协议,便于复用和测试
3. 底层可替换
通过 Adapter 架构,框架核心与底层 HTTP 处理完全解耦。所有业务代码(路由、中间件、服务、插件)操作的是 VextJS 封装的 req / res 对象,而非底层框架的原生对象。
与其他框架对比
环境要求
- Node.js >= 18.0.0
- TypeScript 5.x(推荐,也支持纯 JavaScript)
下一步
准备好了吗?前往 快速开始 创建你的第一个 VextJS 项目。