Tôi đang làm việc để cải thiện thời gian hiển thị tốc độ trang và một trong những phương pháp là gzip nội dung từ máy chủ web.
Lưu ý rằng gzipping chỉ có lợi cho các tài nguyên lớn hơn. Do chi phí và độ trễ của quá trình nén và giải nén, bạn chỉ nên tải các tệp gzip trên ngưỡng kích thước nhất định; chúng tôi khuyến nghị phạm vi tối thiểu trong khoảng từ 150 đến 1000 byte. Gzipping các tệp dưới 150 byte thực sự có thể làm cho chúng lớn hơn.
Chúng tôi phục vụ nội dung của chúng tôi thông qua Akamai , sử dụng mạng của họ cho proxy và CDN. Những gì họ đã nói với tôi:
Theo dõi câu hỏi của bạn về kích thước tối thiểu Akamai sẽ nén đối tượng được yêu cầu khi gửi nó cho người dùng cuối: Kích thước tối thiểu là 860 byte.
Phản hồi của tôi:
Lý do tại sao kích thước tối thiểu của Akamai là 860 byte? Và tại sao, ví dụ, đây không phải là trường hợp cho các tệp mà Akamai phục vụ cho Facebook? ( xem bên dưới ) Google khuyên bạn nên gzip mạnh hơn. Và điều đó có vẻ phù hợp trên trang web của chúng tôi, nơi các lượt truy cập thường xuyên nhất, cho đến nay, là các cuộc gọi AJAX <860 byte.
Phản ứng của Akamai:
Lý do 860 byte là kích thước tối thiểu để nén là gấp đôi: (1) Chi phí nén của một đối tượng dưới 860 byte vượt xa mức tăng hiệu suất. (2) Dù sao, các đối tượng dưới 860 byte có thể được truyền qua một gói duy nhất, vì vậy không có lý do thuyết phục nào để nén chúng.
Vì vậy, tôi ở đây để kiểm tra thực tế. Là giới hạn 860 byte do kích thước gói là kết thúc của lý do này? Tại sao các trang web lưu lượng truy cập cao sẽ đẩy mức này xuống giới hạn 150 byte ... chỉ để tiết kiệm chi phí băng thông (vì CDN dựa trên phí của chúng trên băng thông được giảm tải từ nguồn gốc) hoặc có tăng hiệu suất khi làm như vậy không?
Cập nhật 7/9/12: Tôi đã hỏi Steve Souder nếu có hiệu suất tăng trong các phản hồi gzipping đã nhỏ hơn một gói và kích thước đối tượng tối thiểu được đề xuất cho lợi ích hiệu suất gzip và đây là phản hồi của anh ấy:
Cảm ơn email của bạn. Kích thước nằm trong khoảng từ 1-5K. Apache có một mặc định nhưng tôi quên nó là gì - đó sẽ là một hướng dẫn tốt.
Chúng tôi thực hiện nén trên thiết bị F5, vì vậy chúng tôi sẽ hạ nó xuống ~ 350 byte, vì có một số lượng lớn các cuộc gọi AJAX giữa đó và 1K. Các cuộc gọi AJAX có ít hơn 350 byte trên trang web của chúng tôi đều giảm khoảng 70 byte ... ít hơn so với khuyến nghị của Google ... vì vậy nó thực sự quay trở lại: biết trang web của bạn và điều chỉnh dựa trên mã của bạn .
Tôi sẽ quay lại bài đăng này sau khi bản cập nhật F5 chạy trong Sản xuất một thời gian. Tôi nghĩ rằng sẽ có ít lợi ích hiệu suất, nhưng chúng tôi sẽ giảm chi phí Akamai của chúng tôi một chút vì chúng đang phục vụ ít hơn.