很多人第一次接触 Fastify,只记住一个词:快。
但“快”不是魔法,而是工程设计结果。
Fastify 快,主要来自四层原因。
#1. 路由匹配不是临时找路,而是高效分拣
请求一进来,Fastify 不想每次都做一堆随意判断。
它的路由系统更像提前规划好的高速分拣轨道,而不是人工拿纸单到处问路。
#2. Schema 会先编译,不是每次现查规则
Fastify 官方一直强调它是 schema-based 框架。
请求校验和响应序列化都会基于 JSON Schema 做编译。
普通低配处理
请求来了
└── 现看规则
└── 现做判断
└── 现拼响应
Fastify 处理
启动时
└── 先把规则编成高速扫描函数
请求来了
└── 直接走已编译分拣线#3. 响应不是随手 JSON.stringify,而是可走专用打包机
当你为响应声明 schema 后,Fastify 会用更适合这条线路的序列化流程。
这既提升吞吐,也减少“内部字段误出库”的风险。
#4. 日志与对象扩展都考虑了运行时成本
- 日志默认走 Pino 这条高性能追踪链路
decorate不是随手往对象上乱挂字段,而是提前定义“设施形状”,让运行时更容易优化
所以,Fastify 的快不是“语法短”。
而是它把路由、校验、序列化、日志、对象结构都按物流自动化的思路设计了。