《游戏引擎实现原理》8.2 构建与部署
把《微光岛》真正构建成可发布的静态产物:一次 vite 生产打包(minify + 内容哈希)、静态资源拷贝、index.html 生成、带 sha256 的产物清单,再用一个校验器重算哈希并做篡改检测。真实 CDN 上传属 L4,本节显式标注。
tag
把《微光岛》真正构建成可发布的静态产物:一次 vite 生产打包(minify + 内容哈希)、静态资源拷贝、index.html 生成、带 sha256 的产物清单,再用一个校验器重算哈希并做篡改检测。真实 CDN 上传属 L4,本节显式标注。
把 TaskAPI 真正部署到服务器:写 systemd 单元托管进程、用软链与健康门控的脚本切换版本、把第 12 章的优雅关闭接到 SIGTERM 上,并实测「发信号后排空在途请求再退出」的完整时序,最后讨论多实例滚动与套接字传递两种零停机思路。
云主机与托管裸机通常只给一个 root SSH,没有控制台、没有 ISO 挂载权限。nixos-anywhere 用 kexec 把目标机直接引导进 NixOS 安装环境,在内存中执行 disko 分区与 nixos-install,一次命令完成从空盘到可复现系统。本文讲清三段式原理、关键参数、密钥注入、批量流程、CI 自动化与常见失败排查。
实时控制是机器人从「能动」到「动得稳」的分水岭,核心是把控制周期与抖动控制在预算内。本文讲清周期选择与抖动预算分解、PREEMPT_RT 与实时内核配置、cyclictest 延迟测量、EtherCAT 与分布式时钟、CANopen 与 CiA402 驱动器协议、ros2_control 硬件接口层的实时实现、安全停机与看门狗,以及上机调试与延迟回归。
机器人从实验室走向现场,要解决实时性、故障恢复与功能安全三件事。本文讲清 PREEMPT_RT 内核与延迟测量、线程优先级与 CPU 隔离、EtherCAT 与 CAN 现场总线、看门狗与故障恢复、ISO 10218 与 ISO/TS 15066 的功能安全要求、STO 与 SS1 等安全功能、协作机器人四种安全模式,以及 OTA 与车队管理。
GitHub Actions 无服务器部署实战:AWS Lambda 的 OIDC 免密配置与 SAM、CDK、SST 三条路径、层与容器镜像打包、别名与版本切换、Cloudflare Workers 的 wrangler-action 与 KV、D1、R2 绑定、预览环境、边缘函数冷启动与体积约束、环境变量与密钥管理、灰度回滚与部署后冒烟测试
GitHub Actions 与 Kubernetes GitOps 部署实战:CI 与 CD 职责切分、镜像标签与 digest 策略、GitOps 仓库分层与 Kustomize 覆盖、ArgoCD Application 与 ApplicationSet、Flux GitRepository 与 Kustomization、Actions 更新 manifest 的三种做法、Argo Rollouts 金丝雀、推送式部署取舍、漂移检测与回滚
从一份可上生产的 Deployment 出发,讲清 resources.requests/limits 与 JVM MaxRAMPercentage 的配合(为何不写死 -Xmx、heap 为何不能超过 limit)、三种探针的分工与雪崩误用、ConfigMap/Secret 注入、多副本无状态、滚动更新参数与时区设置。
从可部署产物到生产运维,系统梳理 Scala 应用的云原生落地路径:sbt-assembly 与 sbt-native-packager 打包、GraalVM native image 与分层镜像、多阶段 Dockerfile 与 jlink 裁剪、JVM 容器感知参数、Kubernetes 清单与 HPA/PDB/拓扑分布、三类探针语义与 SIGTERM 优雅停机、外部化配置与 Secret、结构化日志与 Prometheus/OpenTelemetry 可观测性、滚动更新与金丝雀发布,以及 OOMKilled、CPU throttling 等生产故障排查与成本优化。
把 Vite 构建产物部署到不同平台的完整指南:静态托管平台的共性与差异、Vercel 与 Netlify 的配置约定、Cloudflare Pages 的边缘部署、对象存储加 CDN 的自建方案、自建 nginx 的缓存与回退、SPA 路由回退与 404 处理、环境变量注入与多环境构建、预览环境与灰度回滚,以及构建产物审计与高频陷阱。
系统讲解发布脚本的目标与原则、构建产物管理与版本号语义化、部署步骤编排、健康检查与自动回滚,以及发布门禁与审批流的设计实现。
深入 .NET 的原生编译与裁剪,覆盖 Native AOT 发布流程、裁剪器与反射限制、源生成序列化与依赖注入、启动时间与体积对比、兼容性检查与常见排错手段。
系统对比 Scala Native 与 GraalVM 两条 AOT 路线:AOT 编译原理(与 JIT 对比)、Scala Native 的无 GC 与 LLVM 后端、C 互操作与 extern、GraalVM native-image 的 SubstrateVM 与封闭世界分析、Truffle 多语言运行时、反射/序列化等动态特性的处理、启动/内存/吞吐基准、CLI/Serverless/嵌入式部署场景,以及 sbt 构建与 CI 工程实践。
OTP 应用设计模式:Application 规格与回调(mod/start/stop)、监督树分层架构(Supervisor/Worker/Pool)、行为模式选择(GenServer/GenStatem/GenEvent)、Release 打包( distillery/mix release/relx)、热代码升级(code_change/upgrade/downgrade)、配置管理(Mix.Config/Config.Provider/runtime.exs)、环境分离(dev/test/prod)、远程 Shell 与调试(remsh/observer)、分布式部署策略、性能剖析与优化(fprof/eprof/cprof)。
MCP 远程传输与部署实战:从本地 stdio 到远程服务器的演进、Streamable HTTP 传输(流式/非流式)、SSE 传输模式对比、无状态 vs 有状态会话、远程服务器的鉴权与安全、服务器托管与网关、传输选择决策(本地进程/局域网/公网 SaaS)、生产部署的可靠性与多客户端并发。
系统讲解现代应用部署与回滚策略:蓝绿部署、金丝雀发布(灰度)、不可变部署、滚动更新与 A/B 对比,覆盖 Serverless/边缘函数/容器的差异化回滚、部署门禁与自动回滚触发、可观测性与部署质量基线,以及部署策略选型矩阵。
Vite 生产构建最佳实践:import.meta.env 环境变量体系(.env 文件/模式/替换)、构建模式与 base 路径、Sourcemap 策略、产物优化(压缩/代码分割/动态导入)、CDN 与 gzip、部署配置。
Vite 项目的 CI/CD 最佳实践:GitHub Actions 流水线、依赖缓存与 Vite 构建缓存、并行 Job 与分片、构建产物交付(哈希/上传)、Vercel/Netlify/GitHub Pages 自动化部署、构建失败排查。
系统覆盖 PHP 生产部署:Nginx + PHP-FPM 配置与调优、Docker 化多阶段构建、环境变量管理、CI/CD 流水线、上线灰度与回滚、监控告警与常见故障排查。
将 NixOS 配置远程部署到多台服务器需要专门的工具。本文对比 NixOps、deploy-rs 和 Colmena 三种主流方案,详解配置编写、部署流程和回滚机制。