1.1 KiB
1.1 KiB
⚡ 性能
moon_zod 的可变路径栈(第 5 阶段)将路径字符串构造延迟到实际发生错误时。在验证成功路径上——这是格式良好的 LLM 输出的常见情况——路径跟踪零堆分配。
这对于 Wasm 边缘运行时尤其重要,因为垃圾回收暂停和内存压力直接影响请求延迟。
跨语言基准测试(100k 次迭代)
| 验证器 | 运行时 | 吞吐量 |
|---|---|---|
| TS Zod | In-process V8 | 243,178 ops/sec |
| MoonZod | Native (@bench) | 3,815,556 ops/sec |
两个验证器都以进程内方式运行,无子进程开销。MoonZod 使用 MoonBit 的
@bench库进行校准的迭代计数(ns/op → ops/sec);TS Zod 在 100k 次手动parse()调用上使用挂钟计时。在此基准测试中,MoonZod 比 TS Zod 快约 15 倍,展示了专注、零分配验证路径(第 5 阶段可变路径栈)的优势。
运行基准测试:
moon run cmd/main # MoonZod 吞吐量(3 个基准测试)
cd bench_cross_lang && node bench.js # 跨语言对比