《每天30分钟吃透一个前沿新技术——深入CRP与SSR/SSG架构实战》

第一章 浏览器渲染引擎深度解构

1.1 关键渲染路径(CRP)全链路解析

1.1.1 现代浏览器架构演进
Browser Process
Render Process
Main Thread
Worker Threads
DOM Parser
Style Calculator
Layout Engine
Image Decoder
Script JIT Compiler

各模块核心职责:

  • 主线程:DOM解析、样式计算、布局、绘制指令生成
  • 合成线程:图层管理、光栅化调度
  • 光栅线程:GPU加速渲染、图块生成
1.1.2 CRP六阶段模型
  1. DOM构建阶段

    • 增量解析策略:遇到<script>时的阻塞处理
    • 预加载扫描器工作流程:
      while (tokenizer.hasMoreTokens()) {
             
              
              
        const token = tokenizer.nextToken();
        if (token.type === 'RESOURCE') {
             
              
              
          preloader.fetch(token.url); 
        }
      }
      
  2. CSSOM构建阶段

    • 级联规则冲突解决算法:
      def calculate_specificity(selector):
          a = id_count(selector)
          b <