Brotli 压缩传输正式站 动作由 Vercel CDN 对 WASM 响应协商 Brotli 编码。结果本地 q5 样本从 57.23 MiB 降到 13.48 MiB,减少 76.45%。线上已观察到 br 响应。
gzip 分片与重试正式站 动作主请求失败后加载清单,按序接收 265 个分片,最多并发 3 片,每片最多尝试 3 次。结果打包 gzip 为 16.52 MiB。模拟主请求断流及一个分片失败,共发起 266 次分片请求,重试后 SQL 通过。
分片边解压边编译正式站 动作按顺序把 gzip 分片送入流式解压,解码后直接交给同一个 WASM 编译流。结果本地断流样本中,V8 在备用流结束前 1,161 ms 已开始校验函数,最终 SQL 通过。
按体积优化构建构建流程 动作C/C++ 编译与链接使用 -Oz,Rust WASM 使用 panic=abort,Rust 标准库使用 ThinLTO。结果当前原始 WASM 为 57.23 MiB。各参数的独立体积收益待测。
复用构建产物与缓存构建流程 动作发布时复用已导入的 WASM 与加载器并校验哈希,构建重跑复用 Bazel action cache。结果本地成功重跑 84.63 s,命中 2,489 个 action cache。
裁剪代码与静态数据待验证 动作按符号和运行轨迹定位可移出首启路径的代码或数据,分别评估裁剪、外置和按需加载。结果代码段 43.46 MiB,数据段 13.30 MiB。裁剪后体积与 SQL 兼容性待测。
把编译后的 Module 交给 Worker现有实现 动作启动器完成流式编译,数据库 Worker 接收同一个 Module 并创建实例。结果本地真实引擎样本只发起 1 次主 WASM 请求,启动后可执行 SQL。
减少 pthread 预热正式站 动作移动版将预热数从 64 改为 32。WASM 字节与桌面版一致,两条路径选用各自的 JS 加载器。结果模拟手机就绪时观察到 45 个 Worker,桌面样本为 65 个。
降低初始线性内存本地实测 动作重新链接 384 MiB 和 256 MiB 两组配对产物,分别加载对应的 WASM 与 JS。结果两组首条 SQL 均通过。256 MiB 版在就绪、空闲 12 秒和首条 SQL 后均为 256 MiB。
调整 CPU 预算本地实测 动作对同一 256 MiB 构建分别使用 cpuCount=2 和 cpuCount=1,观察就绪、空闲与首次 SQL。结果空闲 12 秒后,两组分别观察到 80 和 78 个 pthread Worker,首条 SQL 均通过。