2016-02-28 23 views
10

Không chắc chắn nếu Stack Overflow sử dụng bộ nhớ đệm để tăng tốc độ tải trang của nó, nhưng nếu nó có, nó đã thực hiện một công việc tuyệt vời. Có nhiều thành phần cần được cập nhật. Tôi hình ảnh này bạn nhìn thấy mỗi giây duy nhất có nhiều thành phần được cập nhật. Làm thế nào Stack tràn nó rất hoàn hảo? enter image description hereCách tràn ngăn xếp đã triển khai bộ đệm ẩn?

+0

Từ trục trặc thường xuyên khi duyệt các trang web StackExchange, tôi có thể nói rằng StackExchange sử dụng [CloudFlare] (https://www.cloudflare.com/) cho phần "tăng tốc" (bộ nhớ đệm) (tất cả?) Của trang web để có trải nghiệm tốt hơn. – Castaglia

+1

Đây có phải là câu hỏi [meta] không? –

Trả lời

5

Điều này được trả lời toàn diện hơn trên Meta.SE trong answer này. Tuy nhiên, những điểm nổi bật là:

  • Về cơ bản mọi thứ được lưu trong bộ nhớ cache, đặc biệt là mọi thứ được phân phát cho người dùng ẩn danh.
  • They use Redis servers with 96 GB of Ram. Máy chủ này giữ "Bộ nhớ cache L1" của các giá trị được đặt và đọc gần đây. Các giá trị này được nén trước khi gửi chúng tới Redis. Họ cũng sử dụng Output Caching
  • Mỗi trang web IIS của có 3 loại lưu trữ:
    • (phiên người dùng, lượt xem, vv) "Địa phương"
    • (nóng câu hỏi id, tỷ lệ người dùng chấp nhận) "Trang web"
    • "toàn cầu" (hộp thư của người dùng, hạn ngạch API)

Thậm chí còn có thêm chi tiết về High Scalability, mặc dù điều này là gần 5 tuổi vào thời điểm này. Có một newer article (từ năm 2014) đề cập đến rằng có hai cấp độ bổ sung của bộ nhớ đệm có liên quan cũng như:

  • SQL Server (toàn bộ cơ sở dữ liệu nằm trong bộ nhớ). Kể từ năm 2013, database servers had 384 GB of memory
  • SSD (chỉ nhấn khi bộ nhớ cache của máy chủ SQL đang khởi động ... không phải là thứ tôi muốn xem xét "bộ nhớ cache", nhưng nó được đề cập trong bài viết).
Các vấn đề liên quan