96SEO 2026-09-18 11:29 10
很多开发者在调整性能时常会有这种困惑:“明明代码写得很快,为什么使用者还是觉得慢?话说回来,”、“Lighthouse 分数很高,但真机反馈一直卡顿?按理说,”这通常是因为你没有建立科学的衡量标准。这份手册将带你理清前端性能的“度量衡”,帮你精准定位性能瓶颈。
使用者能交互 ─────────────────────────────────────────────────────┐ 服务器返回 DOM解析完 最大内容出现 所有资源下完 │ │ │ │ │ │ ←── TTFB ──→ │ │ │ │ │ ←─ DCL ─→ │ │ │ ←──── FP / FCP ────→ │ │ │ ←──────── LCP ─────────────────→ │ │ │ ←───────────────── Load ──────────────────→ │ │ │ ←───────────────── TTI ──────────────────→ │ ▼ ▼导航开始
理解所有指标的第一件事:它们都用同一把尺子量所以能直接比较、相减。话说回来,

痛点:打开页面后长时间转圈圈,使用者怀疑是服务器挂了还是网络断了。
定义:"服务器返回 HTML 第一个字节要多久"
测量方式:
const nav = performance.getEntriesByType;const ttfb = nav.responseStart;// 从导航开始到收到第一个字节
达标线:<200ms 好 / ~600ms 可接受 /> 600ms 要改
定义:"浏览器第一次往屏幕刷像素"
痛点:白屏时间过长,使用者完全不知道页面是否正在加载,导致直接跳出。不过,
定义:"浏览器第一次画出有意义的内容"
new PerformanceObserver => { list.getEntries.forEach => { if { console.log;} }),}).observe;
达标线:<0.8s 好 / ~3s 可接受 /> 3s 差
定义:"HTML 全部解析完 + 所有 defer / module script 执行完"
nav.domContentLoadedEventEnd;
痛点:页面内容虽然出来了但主要大图或标题迟迟不显示,导致视觉上巨大的“未完成感”。
定义:"页面主要视觉区域画完的时刻"
new PerformanceObserver => { const entries = list.getEntries;const lcp = entries;// 最终一次上报的才是最终 LCP console.log;}).observe,
定义:"HTML 声明的所有资源都下完"
nav.loadEventEnd;
定义:"主线程连续空闲秒。可交互"
痛点:点击了按钮没反应,使用者觉得页面“点死了”。
定义:"使用者每次交互到下一次画面更新的耗时"
测量方式:建议用 web-vitals 库,手写复杂
痛点:加载过程中内容突然跳动,导致使用者点错按钮,极其痛苦。
定义:"页面上所有意外的布局偏移积分"
达标线:<0.1 好 / ~0.25 可接受 /> 0.25 差
定义:"FCP 到 TTI 之间,主线程被阻塞的总时长"
| 方案 | 适用优点缺点|||
|---|---|---|---|
| Chrome DevTools Performance 面板 | 一次性调试零代码、直观、火焰图详细详细,没法长期监控Lighthouse | 一次性评分综合报告实验室环境,不代表真实使用者自己 PerformanceObserver | 长期埋点灵活、零依赖要写代码,边界 case 要自己处理web-vitals 库 | 线上监控规范、跨浏览器、支持 INP/CLS+3KB
import { onCLS,onFCP,onLCP,onINP,onTTFB } from 'web-vitals';const send = => { 上报到你的监控后端 navigator.sendBeacon);},onCLS;onFCP,onLCP;onINP,onTTFB;
三行代码覆盖 Core Web Vitals。Google 官方维护,永远比自写的准。
浏览器自动提供的指标只是"公共节点"。你自己关心的节点要自己打标。
// 标一个时间点performance.mark;// 标一段耗时performance.mark;await fetchData;performance.mark;performance.measure;说起来,// 读出来const m = performance.getEntriesByName;话说回来,console.log;其实,
SPA 里最常见的自定义节点:
| 你想知道 | 看这个
|---|
| 服务端/网络慢 | TTFB
| 白屏多久 | FCP
| 使用者觉得"好了" | LCP
| 首屏可用 | 自定义 app-mounted mark
| 点击是否卡 | INP
| 页面跳动 | CLS
| 路由跳转 | 自定义 route-change measure
| 接口慢 | Resource API
Core Web Vitals 三件套 = LCP + INP + CLS。这三个是 Google 搜索排名会用的,也是线上监控的最小必要集。其他都是辅助,
不上:用 Chrome DevTools Performance + Lighthouse 足够,不用写埋点。
上线后:接 web-vitals + 自建或对接 APM。监控 Core Web Vitals + 若干自定义 mark 就够。
不要做的事:
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback