<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>交付工程 on PlumePHP</title><link>https://plumephp.com/tags/%E4%BA%A4%E4%BB%98%E5%B7%A5%E7%A8%8B/</link><description>Recent content in 交付工程 on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Fri, 30 Oct 2026 20:30:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/%E4%BA%A4%E4%BB%98%E5%B7%A5%E7%A8%8B/index.xml" rel="self" type="application/rss+xml"/><item><title>《互联网产品的客户端架构·规模化与架构演进》6.3 发布流水线与灰度回滚</title><link>https://plumephp.com/inet-client-evolve-06-3-release-pipeline/</link><pubDate>Fri, 30 Oct 2026 20:30:00 +0800</pubDate><guid>https://plumephp.com/inet-client-evolve-06-3-release-pipeline/</guid><description>发布流水线的价值不在自动化，而在每一步都能给出可解释的放行或阻断。本节把阶段门禁、灰度比例、健康阈值与回滚触发写成纯函数：前置阶段未通过则后续阻塞，样本不足时保持不动，指标越界立即回滚，并把每次决策追加成可追溯的版本记录。灰度不是按比例放量，而是按证据放量。</description></item><item><title>《互联网产品的客户端架构·规模化与架构演进》6.2 产物治理与缓存</title><link>https://plumephp.com/inet-client-evolve-06-2-artifact-cache/</link><pubDate>Fri, 30 Oct 2026 19:00:00 +0800</pubDate><guid>https://plumephp.com/inet-client-evolve-06-2-artifact-cache/</guid><description>缓存命中率低，原因往往不是缓存没有生效，而是缓存键没有覆盖真正的输入。本节把内容哈希、工具链、环境变量与依赖产物拼成稳定缓存键，给出命中、键变化、产物缺失与过期四类判定，并用产物清单与体积预算把构建结果变成可审计的事实。命中率只是结果，可重现才是目标。</description></item><item><title>《互联网产品的客户端架构·规模化与架构演进》6.1 Monorepo 与包边界</title><link>https://plumephp.com/inet-client-evolve-06-1-monorepo/</link><pubDate>Fri, 30 Oct 2026 15:30:00 +0800</pubDate><guid>https://plumephp.com/inet-client-evolve-06-1-monorepo/</guid><description>Monorepo 的难点不是把代码放进一个仓库，而是让包边界可执行。本节把包声明、依赖、公开与内部可见性、子路径导出写成一张依赖图，用拓扑排序与环检测给出构建顺序，再用纯函数判断跨包引用是否合法，并复盘一次深路径引用绕过评审的事故。边界一旦只写在文档里，就会在第一次赶工期时失效。</description></item></channel></rss>