1. Blink Rendering Engine là gì
Blink là một công cụ kết xuất trình duyệt mã nguồn mở được Google phát triển như một nhánh (fork) của WebKit vào năm 2013. Là công cụ bố cục cốt lõi của Chrome, nó chịu trách nhiệm:
- Xử lý DOM: Xây dựng Mô hình Đối tượng Tài liệu từ HTML
- Tính toán Kiểu: Chuyển đổi CSS thành Mô hình Đối tượng CSS
- Bố cục: Xác định vị trí và kích thước phần tử
- Vẽ: Chuyển đổi bố cục thành các pixel thực tế
- Tổng hợp: Tối ưu hóa kết xuất thông qua quản lý lớp
Các thành phần kiến trúc chính:
- Kiến trúc đa tiến trình (tiến trình kết xuất)
- Kết xuất iframe ngoài tiến trình
- Cô lập các phiên bản trang web khác nhau
2. Blink so với các Công cụ Kết xuất khác
Các công cụ kết xuất chính của web khác nhau về kiến trúc và phương pháp tiếp cận:
Tính năng | Blink | WebKit | Gecko | Servo |
---|---|---|---|---|
Nhà phát triển | Apple | Mozilla | Mozilla | |
Ngôn ngữ | C++ | C++ | C++ | Rust |
Mô hình Luồng | Đa tiến trình | Đa luồng | Đa tiến trình | Đa luồng |
Hỗ trợ CSS | Thực nghiệm | Ổn định | Hoàn chỉnh | Thực nghiệm |
JavaScript | V8 | JavaScriptCore | SpiderMonkey | SpiderMonkey |
Sử dụng GPU | Nâng cao | Vừa phải | Cơ bản | Thực nghiệm |
Không giống như WebKit xử lý tất cả các cổng nền tảng một cách tập trung, Blink ủy quyền mã dành riêng cho nền tảng cho các nhà cung cấp riêng lẻ.
3. Các Mô-đun Hoạt động của Blink
Blink bao gồm một số hệ thống con quan trọng:
Tải Tài liệu
- Trình phân tích cú pháp HTML
- Trình quét tải trước
- Trình tìm nạp tài nguyên
Kiểu & Bố cục
- Công cụ kiểu (trình xây dựng CSSOM)
- Xây dựng cây bố cục
- Nội suy thuộc tính CSS
Đường ống Đồ họa
- Cây lớp vẽ
- Tổng hợp tăng tốc GPU
- Rasterization (Skia)
Tích hợp JavaScript
- Ràng buộc DOM
- Hệ thống sự kiện
- Lớp tương tác V8
Web Components
- Shadow DOM
- Custom Elements
- HTML Templates
4. Vai trò của Blink trong Kiến trúc Trình duyệt
Là lõi kết xuất trong các trình duyệt dựa trên Chromium (Chrome, Edge, Opera):
- Ranh giới Bảo mật: Chạy trong các tiến trình kết xuất bị cô lập với hộp cát (sandboxing)
- Trung tâm Hiệu suất: Xử lý tối ưu hóa đường dẫn kết xuất quan trọng
- Triển khai Tiêu chuẩn: Triển khai hơn 1000 thông số kỹ thuật nền tảng web
- Quản lý Bộ nhớ: Triển khai phân bổ phân vùng để tăng hiệu quả
- Tính năng Thử nghiệm: Cung cấp các Origin Trial cho các API mới
Kiến trúc của Blink cho phép Chrome hỗ trợ hơn 20.000 bài kiểm tra CSS đồng thời trong khi vẫn duy trì hiệu suất kết xuất 60fps.
Bạn Cũng Có Thể Thích