CDN như CloudFlare hoạt động như thế nào?


23

Những gì tôi hiểu cho đến nay:

  • Bạn giữ máy chủ web hiện tại của mình, nhưng bạn thay đổi máy chủ DNS cho trang web của mình từ máy chủ DNS của máy chủ hiện tại sang máy chủ DNS của CloudFlare.
  • CloudFlare phục vụ tài nguyên trang web của bạn từ nhiều trung tâm dữ liệu trên toàn thế giới.

Bây giờ, tôi muốn biết các chi tiết kỹ thuật của cơ chế này. Dưới đây là một số câu hỏi tôi có:

  1. CloudFlare có hoạt động như một proxy bộ đệm không? Nói rằng tôi có một loạt các hình ảnh trên các trang của trang web của tôi. CloudFlare có lưu trữ tất cả các hình ảnh đó trên mỗi trung tâm dữ liệu của họ và sau đó phân phát chúng từ các trung tâm dữ liệu đó không?

  2. Những tài nguyên trang web bị ảnh hưởng? Chỉ những cái tĩnh? Còn các trang web (tài liệu HTML) thì sao? Điều gì xảy ra nếu các trang được tạo bởi máy chủ của tôi? Làm thế nào để CloudFlare đảm bảo luôn phục vụ phiên bản cập nhật nhất của trang?

  3. Điều gì về các yêu cầu POST đến trang web của tôi (ví dụ: khách truy cập tải dữ liệu qua Ajax sau đó được lưu trữ trong cơ sở dữ liệu)? Những thứ này phải được thực hiện trên máy chủ của tôi. Vì vậy, CloudFlare không (và không thể) tăng hiệu suất của quy trình này, phải không? Vì vậy, CloudFlare chỉ chuyển tiếp yêu cầu Ajax đến máy chủ web gốc?

Câu trả lời:


23
  1. Vâng, đó là một proxy ngược bộ nhớ đệm.
  2. "Nó phụ thuộc". Theo mặc định, chỉ những thứ như hình ảnh và CSS được lưu trong bộ nhớ cache, nhưng bạn có thể đặt mức bộ đệm cho mỗi vùng và đặt Quy tắc trang để ghi đè lên những gì được lưu trong bộ nhớ cache hoặc không nên lưu vào bộ đệm. HTML tĩnh có thể bị buộc phải được lưu trong bộ nhớ cache theo quy tắc trang, nhưng rõ ràng nội dung động không thể. Ngoại lệ ở đây là nếu bạn có gói Business hoặc Enterprise hoặc đăng ký thông qua một số đối tác lưu trữ nhất định, nơi bạn có quyền truy cập vào công nghệ Railgun, theo đó CloudFlare sẽ chỉ lấy thông tin đã thay đổi trên một trang, ngay cả khi nó là động. Nếu bạn đã đặt CloudFlare thành bộ nhớ cache mọi thứ, bạn cần kiểm soát thời gian chờ bộ đệm với các tiêu đề bộ đệm trên nguồn gốc và / hoặc đặt bộ đệm bộ nhớ cache trên vùng của bạn trong Giao diện người dùng CloudFlare.
  3. Các bài đăng phải luôn được gửi đến nguồn gốc, vì vậy CloudFlare chỉ cần chuyển chúng qua. Bạn vẫn sẽ tăng hiệu suất vì CloudFlare sử dụng anycast để phục vụ DNS và HTTP từ trung tâm dữ liệu gần nhất.

Tiết lộ đầy đủ: Tôi làm việc cho CloudFlare.


5

Chỉ để thêm một chút rõ ràng hơn:

Có một bài viết khá hay trên Quora về cách CloudFlare hoạt động .

Những tài nguyên trang web bị ảnh hưởng? Chỉ những cái tĩnh? Những gì CloudFlare lưu trữ theo mặc định .

"CloudFlare có hoạt động như một proxy bộ đệm không? Giả sử, tôi có một loạt hình ảnh trên các trang của trang web của mình. CloudFlare có lưu trữ tất cả những hình ảnh đó trên mỗi trung tâm dữ liệu của họ và sau đó phân phát chúng từ các trung tâm dữ liệu đó không?"

Bạn có thể mở rộng bộ nhớ đệm của chúng tôi ngoài nội dung tĩnh với PageRules.

Lưu ý: Chúng tôi sẽ không lưu trữ tài nguyên của bên thứ ba trên trang web của bạn (Flickr, Google, Facebook, v.v.).


1

Để thêm vào phản hồi của Damon:

Bạn có thể tìm thấy một số hướng dẫn bằng video hữu ích để thiết lập Quy tắc trang phổ biến / được đề xuất nhất với CloudFlare tại đây:

cloudflare.com/features-page-rules

Ngoài ra, nếu bạn đã tối đa hóa Quy tắc Trang có sẵn trong gói hiện tại của mình, bạn sẽ sớm có thể mua các quy tắc bổ sung mà không thay đổi gói.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.