5 个版本 (3 个破坏性更新)
0.5.1 | 2022年12月5日 |
---|---|
0.5.0 | 2022年12月2日 |
0.4.1 | 2022年11月30日 |
0.2.0 | 2022年11月30日 |
0.1.0 | 2022年6月8日 |
#220 in 性能分析
76KB
1.5K SLoC
使用 Web Bundle 的合成模块基准测试
基本用法
- 预先安装
Rust
和Deno
(可选)。 - 有关示例用法,请参阅
Make.zsh
。以下为摘要:
-
检出
git clone https://github.com/google/webbundle.git`
-
生成模块和基准测试。
示例
cd webbundle/webbundle-bench cargo run --release -- --out out --depth 4 --branches 4
请参阅
build()
在Make.zsh
中的用法。 -
启动 web 服务器。
示例
cd ../webbundle-server cargo build --release cd ../webbundle-bench RUST_LOG=error ../target/release/webbundle-server --port 8080
请参阅
run_webserver()
在Make.zsh
中的用法。 -
在您的浏览器中打开
https://127.0.0.1:8080/out/index.html
,并单击每个基准测试。 -
(可选) 使用 puppeteer 进行自动化运行基准测试
deno run --allow-all ./run-bench.ts --port 8080
请参阅
bench()
在Make.zsh
中的用法。
未实现的功能
webbundle-bench
受 js-modules-benchmark
的启发。
webbundle-bench
使用 Rust 和 Deno 重写,因此我们不依赖于 Python 和 Node.js,并支持必要的非常少的特性,这些特性对于基准测试 Web Bundle 加载性能是必需的。
webbundle-bench
目前缺少许多功能
- 支持
modulepreload
。 - 生成模块的规则。
- 指定生成模块的大小。
- 支持其他打包器(例如
rollup
)
依赖项
~8–17MB
~222K SLoC