Cache và invalidation
Chủ đề Dành cho thành viên
Bài toán
Cache là cách rẻ nhất để một DB chịu được lượng đọc tăng nhiều lần. Vì vậy nó xuất hiện ngay từ giai đoạn đầu (Instagram 2011, Facebook 2004–2010). Cái giá đến sau, và lặp lại ở hầu hết các nguồn:
- Invalidation: cache cũ khi dữ liệu đổi, nhất là khi có nhiều region.
- Miss đồng loạt: nhiều request cùng miss một key nóng và dồn xuống DB (thundering herd).
- Chi phí và dung lượng: working set lớn hơn RAM; đa region nhân bản cache.
- Vận hành: đến một quy mô, cache trở thành một dịch vụ tier-0 có team, sidecar và SLA riêng.
Diễn tiến theo thời gian
- 2004→2010 · Facebook (Meta): đỡ tải DB bằng Memcache, rồi xây TAO (cache/kho cho social graph) và nhiều hệ cache khác, trước khi phải xuống tới tầng data center. Meta 2025
- 2005→2013 · LinkedIn: Databus: CDC theo thứ tự commit nuôi search index, cache và read replica; consumer tụt quá xa hoặc mới tạo lấy snapshot từ bootstrap service thay vì đè lên DB chính. LinkedIn 2013
- 2006 · Google: cache phía client của Chubby giữ bằng lease + invalidation tường minh, không bao giờ đẩy cập nhật (đẩy có thể bắt client nhận vô hạn thay đổi cho file nó đã thôi dùng); keep-alive đủ giữ số entry bất kỳ. Nhờ vậy Chubby thay được DNS làm name service: với TTL 60 giây, một job 3.000 client cần khoảng 150.000 lượt tra DNS mỗi giây. Google 2006
- 2006 · YouTube: Video ít xem là long tail truy cập đĩa ngẫu nhiên nên cache ít tác dụng; video phổ biến lên CDN; thumbnail nhiều file nhỏ làm squid tụt 300 → 20 request/giây, máy mới mất hơn 24 giờ làm ấm, chuyển sang BigTable. YouTube 2007
- 2010→2020 · Meta: phục vụ mỗi phần user từ một region thì cache giữa các region bất nhất: nhận thông báo được tag mà…
Bạn đã dùng hết 3 bài đọc thử miễn phí
Đây là phần mở đầu của Cache và invalidation. Thành viên đọc được toàn bộ 46 bài tổng hợp theo chủ đề và 141 dòng thời gian công ty.
Các bài tóm tắt vẫn đọc tự do.
- Đọc không giới hạn mọi bài tổng hợp và dòng thời gian
- Danh sách đọc cá nhân hoá theo trình độ và mục tiêu
- Cộng đồng Discord cho thành viên (sắp mở)
Gói 6 tháng giảm ~16%, gói 12 tháng giảm ~25%. Trả bằng VietQR hoặc thẻ.