TGViewer
开发者工具箱|编程·开发工具·资源 开发者工具箱|编程·开发工具·资源 @devtoolboxhub · 363 subscribers
Post #1945 1
Takumi 替代 Satori:Astro 构建速度提升 30%+

在 Astro 项目中,OG 图像生成是静态构建的重要环节。原先使用 Vercel 的 Satori + Sharp 方案,随着页面数量超过 150 条,构建时间显著增长。Satori 依赖 JavaScript 与 Yoga WASM,导致 V8 垃圾回收、JS‑WASM 边界切换以及单线程执行等瓶颈。
Takumi(takumi-js)是一款用 Rust 编写的高性能图像引擎,提供与 Satori 完全兼容的 API。迁移后,构建时间从 67 秒降至 42 秒,整体耗时缩短 30%+,CPU 与系统时间也相应下降。迁移过程无需改动现有 JSX 结构,只需:
1. 安装 takumi-js 并在 package.json 添加 OG_RENDER 环境变量切换。
2. 在动态 OG 端点中根据 siteConfig.ogRender 选择 takumiRenderSvg 或 satori。
3. 通过 sharp 将 SVG 转为高质量 JPEG。
核心收益
- 零布局重构:保持原有 JSX 结构,直接替换渲染引擎。
- Rust 原生速度:显著减少构建时间与 CPU 占用。
- 易于切换:环境变量即可在 CI 与本地构建间切换,支持双引擎对比。

如果你在 Astro、Next.js 或 SvelteKit 项目中使用静态生成的社交预览,考虑将渲染引擎从 Satori 换成 Takumi,可获得显著的构建性能提升。
More from @devtoolboxhub
  1. Oct 13, 2026零停机 Postgres 版本升级方案 PostgreSQL 通过逻辑复制实现零停机的主版本升级。 在升级前,旧集群持续发布变更,新的集群订阅这些变更,保持同步。 升级完成后,只需…
  2. Oct 13, 2026JOPS 1.0.13:一键把 Android 结构迁移到 Cordova/Capacitor JOPS 通过类化视图和生命周期管理,让 Android 应用的结构直接映射到浏览器…
  3. Oct 13, 2026Cairn:让 AI 编码代理的计划落到真实 Issue 上 Cairn 是一个为 AI 编码代理设计的工作 harness,核心目标是让代理的计划、进度与团队使用的 Issue…
  4. Oct 11, 2026Kerbside:离线语音+GPS生成街道问题地图 Kerbside 让你在走路时用手机录音并记录 GPS,随后在本地电脑上使用 Whisper 与 Gemma 自动识别并标注你提…
  5. Oct 11, 2026Node.js SaaS SMS 验证链接的稳定模板与调度策略 在 B2B SaaS 注册页面中,Node.js SMS API 只接受了未完成投递的验证链接,导致重试队列堆积,可…
  6. Oct 10, 2026哪些 AI 爬虫应在 robots.txt 里允许? AI 助手通过两种方式抓取网页:一类收集内容用于训练模型,另一类在用户查询时实时抓取页面并引用。你可以在 robots.txt…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →