Meta's Infrastructure Evolution and the Advent of AI
Bài tóm tắt Meta 2025 3. Quy mô lớn Độ khó: Trung bình
Meta · 2025 · 3. Quy mô lớn · Độ khó: Trung bình — bài gốc
Wiki tập trung vào phần 2004–2020 (tiến hoá hệ thống web). Phần AI cluster chỉ tóm tắt ngắn.
Bối cảnh
Facebook khởi đầu trên LAMP (Linux, Apache, MySQL, PHP). Đến 2025 phục vụ hơn 3,4 tỷ người.
Thay đổi chính
-
2004–2010: scale phần mềm rồi scale vật lý.
- Mỗi trường đại học một database: web server dùng chung, nối sinh viên tới DB của trường mình, tức là "shard theo trường" một cách tự nhiên.
- Sinh viên muốn kết bạn khác trường, từ đó ra đời social graph liên thông.
- Mở ra công chúng: đỡ tải DB bằng Memcache, rồi xây hẳn TAO (social graph) và nhiều hệ cache, quản lý dữ liệu mới.
- Khi ra châu Âu, scale phần mềm "không còn đủ": từ co-lo ở Bay Area sang Ashburn, rồi tự xây DC ở Prineville và Forest City.
-
Nhiều DC kéo theo hai bài toán:
- đưa user tới DC: xây edge, đặt máy cạnh từng ISP, peering; đến nay có hàng trăm POP;
- nhân bản toàn bộ stack ở mỗi DC để trải nghiệm như nhau: cần backbone băng thông cao, đa đường.
Sau đó từ một toà nhà DC lên region gồm nhiều toà.
-
2010–2020: các ca góc của hệ phân tán.
- Cache consistency: mỗi region phục vụ một phần user, nên user ở region khác thấy dữ liệu trễ (nhận thông báo được tag ảnh mà không thấy ảnh, tin nhắn sai thứ tự). Họ xây hệ phân phối cache invalidation, rồi một consistency API.
- Quản lý fleet: Twine (cluster manager hàng triệu máy), Tectonic (file system), ZippyDB (KV nhất quán mạnh), Shard Manager (hàng chục triệu shard), Delos (control plane), Service Router (service mesh).
- Che lỗi phần cứng: Kraken (load test bằng traffic thật), Taiji (cân tải user ở edge), Maelstrom (rút traffic an toàn khi cả DC gặp thảm hoạ).
-
2020 trở đi: AI.
- Gợi ý video ngắn đòi xếp hạng toàn bộ nội dung cho từng người, nên cần GPU.
- Năm 2022, LLM đẩy job training từ 128 lên 2k–4k GPU chạy đồng bộ: một lỗi dừng cả job, khác hẳn web (retry sang máy khác). Theo Meta, tỷ lệ gián đoạn đã giảm khoảng 50 lần.
- Cuối 2023 có hai cluster 24k H100; sau đó dọn trống 5 DC production để dựng một cluster 129k H100; cluster kế tiếp 1 GW (Prometheus).
Vì sao (theo Meta)
Mỗi giai đoạn hết đường scale ở một tầng thì xuống tầng dưới: phần mềm, rồi DC, rồi mạng, rồi edge. Thời web, chiến lược là mua phần cứng rẻ, kém tin cậy và dùng phần mềm che lỗi. Với AI, chiến lược đó không còn đúng, vì cluster training là một hệ đồng bộ hiệu năng cao.
Bài học cho SWE
- Chuỗi kinh điển: DB theo nhóm user → cache → tầng graph/cache chuyên dụng → nhiều DC → region và edge. Xem Scale dọc trước khi scale ngang.
- Phục vụ user từ nhiều region sinh ra bất nhất cache giữa region. Bài toán này lớn tới mức cần hẳn hệ invalidation riêng (Độ tin cậy và multi-region).
- Ở quy mô fleet, quản lý shard trở thành một hệ thống riêng (Shard Manager), không còn là logic trong từng ứng dụng (Sharding và tách database).
Liên quan
Scale dọc trước khi scale ngangĐộ tin cậy và multi-regionSharding và tách databaseCache và invalidation
Được nhắc tới trong
Chủ đề (4)
Công ty (1)