23/12/2018, 23:13

Tổng quan HTTP/2

Người viết: Pham Van Duc Chào mừng mọi người trở lại với chương trình “Mỗi thứ một tí” Hôm nay chúng ta sẽ cùng tìm hiểu 1 chút về HTTP2. Có thể mọi người đã từng nghe về nó, và thực sự thì ở thời điểm hiện tại HTTP2 cũng không còn quá xa lạ. Hầu hết các ông lớn đều đã sử ...

Người viết: Pham Van Duc

Chào mừng mọi người trở lại với chương trình “Mỗi thứ một tí” Hôm nay chúng ta sẽ cùng tìm hiểu 1 chút về HTTP2. Có thể mọi người đã từng nghe về nó, và thực sự thì ở thời điểm hiện tại HTTP2 cũng không còn quá xa lạ. Hầu hết các ông lớn đều đã sử dụng HTTP2 như Google, Youtube, Facebook… Mà chẳng nói đâu xa Viblo cũng đang dùng luôn

Vậy cái HTTP2 là cái gì ❓ Chúng ta sẽ cùng tìm hiểu ngay bây giờ.

Lịch sử HTTP

HTTP aka HyperText Transfer Protocol (Giao thức truyền siêu văn bản) là cách mà trình duyệt của bạn giao tiếp với máy chủ web của trang web bạn đang truy cập.

Có nhiều cách để hai (hoặc nhiều) máy tính giao tiếp với nhau qua Internet, HTTP chỉ là một cách được sử dụng để duyệt web.

Phiên bản HTTP chính thức đầu tiên (HTTP 1.0) được phát hành vào năm 1996 dưới dạng RFC 1945.

Với sự phát triển nhanh chóng của web, với nhiều thành phần hơn css, js… đồng nghĩa với việc chúng ta sẽ cần nhiều tài nguyên hơn và có trường hợp sẽ phải tải đồng thời nhiều tài nguyên. Điều mà khi thực hiện bằng cơ chế 1 connection / 1 tài nguyên của HTTP 1.0 sẽ không đạt được sự tối ưu về băng thông.

Năm 1999 phiên bản HTTP/1.1 được phát hành để giải quyết vấn đề trên với khái niệm về pipelining. Sau đó phiên bản HTTP/1.1 tiếp tục được update và sử dụng cho đến thời điểm hiện tại.

Tuy đã được cải thiện, nhưng pipelining không hoàn toàn giải quyết được vấn đề của HTTP/1.0. Trong khi mọi người cảm thấy “vẫn cứ là ok !” thì ở Google người ta cảm thấy là “không ok lắm!”, và thế là họ đã cho ra đời một giao thức mới mang tên SPDY nhằm cải thiện thời gian tải trang. SPDY đạt được mục tiêu giảm thời gian tải trang bằng các công nghệ nén (compression), ghép kênh (multiplexing) và ưu tiên (prioritization). Tháng 7 năm 2012, nhóm phát triển SPDY công khai răng nó đang được phát triển theo hướng tiêu chuẩn hóa. Các trình duyệt Chromium, Mozilla Firefox, Opera, Amazon Silk, Internet Explorer và Safari cũng đã triển khai SPDY.

Ngay khi được triển khai SPDY đã cho thấy sự cải thiện đáng kể so với HTTP/1.x và sự quan tâm đến từ các nhà phát triển như Firefox và nginx. Không lâu sau đó những nhà phát triển đã bắt đầu thảo luận về HTTP/2. Sau một quá trình kêu gọi và lựa chọn các đề xuất, SPDY/2 đã được chọn làm cơ sở cho HTTP/2. Kể từ đó, đã có một số thay đổi, dựa trên thảo luận trong nhóm làm việc và phản hồi từ những implementers. Đến tháng 5 năm 2015, HTTP/2 specification đã được công bố dưới dạng RFC 7540.

HTTP/2 ❓

HTTP/2 là phiên bản chính thức tiếp theo của giao thức HTTP, nhằm cải thiện tốc độ tải trang và hiệu suất khi duyệt web.

Không update HTTP/2 có sao không ❓

Thực tế thì nếu không update HTTP/2 thì cũng chả sao cả, “mọi thứ vẫn cứ là ok 

0