改动前保存原始状态,核心是留下可回退、可对比的证据,而不是只截一张图。至少保存三类东西:当前页面文件或模板的副本、服务器与缓存配置的记录、改动前速度测试的原始数据。只截图不保存文件和配置,出问题时无法判断是代码、服务器还是缓存造成的差异,也无法快速回退。
很多人做网站加载速度测试时,看到分数和瀑布图就截图存档,然后直接改代码或换缓存插件。这个做法的问题在于,截图只记录了结果,没有记录产生结果的条件。速度测试受网络、设备、缓存状态、测试地点和当时服务器负载影响,同一页面两次测试结果可能不同。如果只留截图,改动后分数变差,你无法区分是改动导致,还是测试条件变了。
另一个误解是认为版本控制或主机自动备份已经足够。版本控制通常只覆盖代码,不覆盖服务器配置、CDN 设置和数据库中的缓存选项;主机备份往往是整站快照,恢复粒度粗,不适合做单次速度优化的对比。
按下面顺序操作,能保证改动前后可比:
对比时看具体指标,而不是只看总分。重点看首次字节时间、最大内容绘制时间、总请求数和传输体积。如果总分下降但关键指标改善,需要结合页面实际体验判断,不能只凭一个分数决定回退。
出现下列情况之一,优先回退到保存的原始状态,再重新规划改动:页面无法正常显示或功能报错;关键速度指标明显劣于基准且无法在短时间内定位原因;改动涉及多处,无法判断是哪一步造成问题。
如果只是个别指标小幅波动,且页面功能正常,可以先保留改动,继续用相同条件复测,确认波动是否稳定。适用条件是测试条件严格一致、改动范围可控;如果测试期间服务器或 CDN 有其他变更,对比结果就不可靠,应先排除这些干扰。
一是缓存状态。测试前如果页面已被 CDN 或浏览器缓存,测的是缓存后的速度,不能代表首次访问体验。保存原始状态时,要注明测试时缓存是否开启,改动前后保持一致。
二是外部资源。字体、统计脚本、第三方组件的变化也会影响速度,如果这些不在你的控制范围内,保存时要记录当时引用了哪些外部地址,便于改动后排查差异来源。
下一步,先按上面的清单把当前状态完整保存一份,再开始第一项速度改动。没有这份基准,后续任何优化都缺少判断依据。