</>
⌕
Junior #browser#dns#tcp#http#rendering

Điều gì xảy ra khi gõ một URL vào trình duyệt và nhấn Enter?

⚡ Trả lời nhanh

Trình duyệt phân tích URL, tra cache rồi phân giải DNS ra IP, mở kết nối TCP (và TLS nếu HTTPS), gửi HTTP request, nhận response, parse HTML thành DOM, tải CSS/JS/ảnh phụ thuộc, tạo render tree rồi layout, paint và composite lên màn hình.

  1. Parse URL (scheme, host, port, path); kiểm tra HSTS, cache.
  2. DNS: cache trình duyệt/OS, rồi resolver, root, TLD, authoritative server trả về IP.
  3. TCP 3-way handshake (QUIC nếu HTTP/3), rồi TLS handshake nếu HTTPS.
  4. Gửi request, server (có thể qua CDN, load balancer) trả response.
  5. Parse HTML thành DOM; gặp CSS dựng CSSOM, gặp script có thể chặn parse.
  6. DOM + CSSOM thành render tree, rồi layout, paint, composite.
  7. JS chạy, tải thêm tài nguyên, trang tương tác được.
GET / HTTP/1.1
Host: example.com
Accept: text/html
🃏 Ôn bằng flashcard