Skip to content

Operations zh

ddddd edited this page Jun 21, 2026 · 1 revision

运维检查

SPACK 提供可以在运行时启动前执行的 CLI 检查。建议把这些检查放进 CI/CD 准入和镜像构建校验流程。

部署前扫描资源

使用 inspect 在不启动 HTTP 服务的情况下扫描资源目录:

spack inspect --assets /app

报告包含:

  • 资源数量。
  • 源资源 sidecar 数量。
  • 源资源和产物总字节数。
  • 已存在 .br、.zst 和 .gz sidecar 的压缩收益。
  • 可以生成配置变体的图片资源。
  • 预计内存缓存预热字节数。
  • 缺失 entry、缺失 fallback 等潜在问题。

命令输出 JSON,方便部署自动化读取。

推荐预检流程

直接服务目录:

spack config validate --file spack.yaml
spack config print-effective --file spack.yaml --redact
spack inspect --assets /app

AOT 服务:

spack-compiler compile /app/dist -o /app/app.spack
spack config validate --file spack.yaml
spack config print-effective --file spack.yaml --redact

inspect 的 warning 应该作为部署评审项处理,尤其是缺失 assets.entry、缺失 fallback 目标,以及缓存预算小于扫描到的资源集。

运行时模式

SPACK 运行时支持两种部署模式:

  • 直接模式:assets.root 指向前端构建输出目录。
  • AOT 模式:assets.root 指向编译器生成的 .spack 包。

直接模式适合兼容性和简单部署。对性能敏感的发布更推荐 AOT 模式,因为重型压缩、图片生成和索引构建都可以在生产流量到达运行时之前完成。

Clone this wiki locally