[Website]Cấu hình nén Brotli và so sánh với Gzip giảm lattency tới 37%

0
2464

Brotli là gì?

Giống như Gzip, Brotli là một thuật toán nén, được phát triển bởi Google và được sử dụng tốt nhất cho nén văn bản. Lý do là nó sử dụng 1 từ điển các từ khóa và cụm từ phổ biến ở cả máy chủ và client, do đó cho tỉ lệ nén tốt hơn. Nó được hỗ trợ bởi tất cả các trình duyệt phổ biến.

So sánh Brotli và Gzip:

Ưu điểm của Brotli so với Gzip là nó sử dụng từ điển, do đó chỉ cần gửi keys hay vì cả từ khóa đầy đủ.

+ Các javascript nén bằng Brotli nhỏ hơn 14% so với Gzip

+ HTML file nhỏ hơn 21% so với Gzip

+ CSS thì là 17%

Lưu ý: Không nên nén hình ảnh bằng gzip hay Brotli bởi vì các định dạng ảnh đã được nén rồi và việc ném chúng lần nữa chỉ làm dung lượng to hơn mà thôi.

Nén nhiều hơn giúp tải trang nhanh hơn và giảm chi phí cho CDN. Lợi ích là như vậy, vậy làm sao để dùng Brotli?

Google cung cấp một module để cài đặt nginx from source:

https://github.com/google/ngx_brotli

Sau khi cài đặt, cần cấu hình như sau trong file config của nginx:

brotli on;
brotli_static on;        # for static compression, explained later
brotli_comp_level 11;    # this setting can vary from 1-11
brotli_types text/plain text/css application/javascript application/json image/svg+xml application/xml+rss;

Như vậy, các nội dung được đề cập trong brotli_types sẽ được nén.

brotli_comp_level là mức nén, có giá trị từ 1-11, càng cao nén càng nhiều, đồng nghĩa với việc giải nén cũng lâu hơn. Nén càng cao thì client phải giải nén càng nhiều, giảm độ trễ trên đường truyền nhưng CPU  của client sẽ phải sử dụng nhiều hơn.

Đối với các file tĩnh (như css, js) thì để nén cao cũng được.

Nếu sử dụng CDN, thì CDN sẽ cache các file nén này và truyền thẳng tới client mới giải nén.

So sánh nén Gzip và Brotli:

 

LEAVE A REPLY

Please enter your comment!
Please enter your name here