本地与云端的serverless JS Runtime 环境 + Svelte SSR 的性能测试: Demo华尔街见闻首页(80%的页面内容)
https://github.com/gakaki/ssr_svelte_benchmarks/assets/5296/5c48eeb4-2f60-4290-b5e9-6b70bb21c4a9
├── app.yaml # 云函数配置
├── crawler_wallstreetcn # go爬虫程序API
├── package.json
├── src # sveltekit
│ ├── app.css
│ ├── app.html
│ ├── lib
│ │ ├── redis.ts
│ │ └── type.ts
│ └── routes
│ ├── +layout.svelte # 布局
│ ├── +page.server.ts
│ ├── +page.svelte
├── svelte.config.js
├── vite.config.js
└── wasmer.toml
crawler_wallstreetcn 该目录为Golang编写的爬虫程序,华尔街见闻首页的数据API,包括最新文章,快讯、股票上证指数、大师课等.存储到Redis中用以缓存数据
wrk -t12 -c400 -d10s http://127.0.0.1:3000
Cloud (点击跳转演示) | Request/10S | 备注 |
---|---|---|
Vercel | 3522 | 科学上网 |
Netlify | 233 | 稳定,会被ban一会儿,压测有防火墙导致数据异常 |
Cloudflare Page | 580 | 还挺稳定,每日限请求数,直接访问 |
Cloudflare Worker | 522 | 科学上网, 和Pages数据差不多 |
AWS Lambda | 待续 | 测试AWS LLRT 低延迟QuickJS 需要付费 |
Deno Deploy | 待续 | 待测试本地报错 adpater deno |
阿里云FC函数计算 | 待续 | 计划 |
Wasmer(Winter.js) | 待续 | 例子为静态文件生成不具有对比性 |
MacBook Air M1 2020 16G 256G
外网服务器测试脚本: | JS Runtime | 演示地址 | Request/10S | 备注内容 | | ------------------------------ | --------------------------- | ----------- | ------------------------------------------------------------ | | Node | Runtime | 455 | V8引擎 | | Bun | Runtime | 352.84 | zig+safafri js core 没有传言的快啊 v8 jit的关系 | | Wasmer | Runtime | | WinterJS,Rust+SpiderMonkey(Firefox的JS引擎) | | Deno | Runtime | | 运行报错 | | GraalVM_JS | Runtime | | 尚未测试,把JS编译为bytecode二进制 | | Aws LLRT | Runtime | | 本地运行报错,亚马逊 AWS 的 QuickJS低延迟启动特性 版本,启动快, | | ssr-rs | 听说性能2~3倍Node方案 | 待续 Rust+V8 SSR 直出 |
原图jpeg格式 21.9kb
webp格式 15.4kb 可在七牛云里打开 avif webp 自适应,可自动检测手机浏览器自动转换无需追加url
avif格式报错 预计可以到55% 65%
{"error":"The output format is avif, please use pfop or workflow service"}