Http 2 là gì

Http 2 là gì

HTTP / 2 là một giao thức mới để vận chuyển dữ liệu sẽ tăng tốc độ web đáng kể và có thể giúp ích cho SEO của bạn. Giao thức HTTP1.1 ‘cũ’ chỉ cho phép các máy chủ web gửi tệp xuống một dòng duy nhất tại một thời điểm và dòng đó phải mở và đóng sau khi mỗi tệp được gửi – một quá trình có thể mất nhiều thời gian. HTTP / 2 cung cấp tốc độ tăng đáng kể vì đường truyền có thể được mở và nhiều nội dung có thể được gửi cùng một lúc. Bài đăng này trình bày cách thức hoạt động của HTTP / 2, tại sao nó lại tốt cho SEO của bạn và cách triển khai nó trên trang web của bạn.

HTTP / 2 sử dụng các công nghệ mới để loại bỏ một trong những điểm nghẽn lớn nhất của web bằng cách giới thiệu các kết nối ghép kênh đầy đủ. Giờ đây, máy chủ có thể mở một kết nối duy nhất với trình duyệt và tiếp tục gửi tất cả các tệp của trang web cho đến khi mọi thứ hoàn tất. Sau đó, kết nối đóng và trình duyệt có thể hiển thị trang web.

Các bài viết liên quan:

HTTP / 2 hoạt động như thế nào?

Bất cứ khi nào bạn nhấp vào một liên kết để truy cập một trang web, một yêu cầu được gửi đến máy chủ. Máy chủ trả lời bằng thông báo trạng thái (tiêu đề) và danh sách tệp cho trang web đó. Sau khi xem danh sách đó, trình duyệt sẽ hỏi từng tệp một. Sự khác biệt giữa HTTP 1.1 và HTTP / 2 nằm ở những gì xảy ra tiếp theo.

Giả sử bạn muốn một bộ LEGO mới. Đầu tiên, bạn đến cửa hàng để mua LEGO của mình. Khi về đến nhà, bạn mở hộp và xem hướng dẫn, hướng dẫn này cho bạn biết bạn phải làm gì: từng viên gạch một. Vì vậy, với mỗi viên gạch bạn phải xem hướng dẫn để xem tiếp theo sẽ sử dụng viên gạch nào. Tương tự cho viên gạch tiếp theo, v.v. Việc qua lại này tiếp tục diễn ra cho đến khi bạn hoàn thành toàn bộ bộ LEGO. Nếu tập hợp của bạn có 3.300 viên gạch, điều đó sẽ mất khá nhiều thời gian. Đây là HTTP1.1.

Với HTTP / 2, điều này sẽ thay đổi. Các bạn đến cửa hàng nhận hộp cho mình nhé. Mở nó, tìm hướng dẫn và bạn có thể yêu cầu tất cả các viên gạch được sử dụng trên một phần của bộ LEGO. Bạn có thể tiếp tục hỏi hướng dẫn để có thêm gạch mà không cần phải xem hướng dẫn. “Những viên gạch này đi cùng nhau, vì vậy chúng ở đây.” Nếu bạn muốn nó thực sự nhanh chóng, bạn thậm chí có thể lấy tất cả các viên gạch cùng một lúc để bạn có thể xây dựng bộ phim ngay lập tức.

Http1.1 so với Http2

HTTP / 2 có thể xử lý nhiều thứ hơn cùng một lúc

HTTP / 2 có rất nhiều tính năng thú vị có thể giúp tăng tốc thời gian tải của bạn. Điều quan trọng nhất, tất nhiên, là ghép kênh đầy đủ, có nghĩa là nhiều yêu cầu có thể xảy ra cùng lúc trên một kết nối luôn mở trong suốt quá trình truyền. Một điều thú vị nữa là Server push; điều này bắt đầu dưới dạng một yêu cầu nhưng khi máy chủ nhận thấy HTML yêu cầu một số nội dung, nó có thể gửi tất cả những nội dung này cùng một lúc mà không cần hỏi. Điều này có thể phù hợp với trang web của bạn, nhưng điều đó phụ thuộc vào một số yếu tố quá phức tạp để đi sâu vào đây.

Giống như tôi đã nói trước đó, với HTTP1.1, trình duyệt yêu cầu một trang web -> máy chủ gửi lại tiêu đề -> tiêu đề đó chứa thông báo trạng thái và nội dung HTML -> đối với mọi tệp cần thiết để xây dựng trang web, một kết nối duy nhất phải được mở và đóng cửa nhiều lần. Nếu một phần của câu đố này hoạt động lên, nó có thể giữ phần còn lại, làm chậm quá trình hơn nữa. Điều này được gọi là chặn đầu dòng và nó rất tốn thời gian. Đây là một trong nhiều lý do tại sao HTTP1.1 có thể sử dụng bản cập nhật.

Tại sao HTTP / 2 cho SEO? Bởi vì tốc độ trang web là quan trọng

Chúng tôi cần tốc độ. Tốc độ trang web đã là một yếu tố xếp hạng SEO trong nhiều năm. Giờ đây, với sự ra đời của chỉ mục ưu tiên thiết bị di động, Google sẽ xem xét kỹ lưỡng tốc độ tải trang web di động của bạn. Các trang web chỉ trở nên lớn hơn trong vài năm qua và các trang web lớn có rất nhiều nội dung như HTML, JavaScript, CSS, hình ảnh, v.v., tất cả đều có nghĩa là thời gian tải lâu hơn.

Một vấn đề lớn khác là độ trễ – đặc biệt là trên thiết bị di động. Thời gian chờ của bạn càng dài, thời gian yêu cầu của bạn đến được máy chủ và máy chủ gửi lại phản hồi càng lâu. Đó là lý do tại sao bạn nên luôn sử dụng CDN để giảm thời gian đưa tệp của bạn đến người đọc từ vị trí gần họ nhất. Mặc dù các trình duyệt có thể xử lý một số lượng nhỏ nhiều kết nối, tự nó tạo thêm thời gian cho toàn bộ thử thách, nhưng quá trình gửi đi gửi lại nội dung không thực sự thay đổi.

Có một số điều bạn có thể làm để cải thiện tốc độ trang web bằng cách tinh chỉnh cách máy chủ của bạn xử lý những điều này, nhưng về cốt lõi, HTTP1.1 không phải là một quy trình quá hiệu quả. HTTP / 2 giúp quá trình này quản lý dễ dàng hơn rất nhiều đối với các máy chủ và trình duyệt, do đó tăng tốc đáng kể. Hãy nhớ rằng sự ra đời của HTTP / 2 không gỡ bỏ HTTP1.1 vì các trình duyệt sẽ vẫn sử dụng giao thức cũ làm dự phòng.

Triển khai HTTP / 2

Việc triển khai HTTP / 2 khá dễ dàng và có thể máy chủ của bạn đã sử dụng nó – hãy kiểm tra nó bằng công cụ trên trang HTTP2.Pro. Hỏi nhà cung cấp dịch vụ lưu trữ của bạn để xem các tùy chọn của bạn là gì. Ngoài ra, hãy chọn Mạng phân phối nội dung, còn được gọi là CDN, cung cấp giải pháp HTTP / 2 đầy đủ. Nếu muốn triển khai HTTP / 2, bạn cũng cần có kết nối HTTPS. Ví dụ: nếu bạn chưa có, hãy lấy chứng chỉ SSL tại Let’s Encrypt để đảm bảo kết nối của bạn, vì vậy bạn có thể nâng cấp t o HTTP / 2.

Một cuộc cách mạng hiện đang diễn ra trong nền tảng của web. HTTP, giao thức mà trình duyệt của bạn sử dụng để kết nối với trang web của bạn, có phiên bản mới: HTTP / 2. Đây không phải là điều khiến người dùng bình thường quan tâm, nhưng đối với các nhà phát triển web, nó thay đổi hoàn toàn cách chúng tôi thực hiện tối ưu hóa hiệu suất. Trong bài viết ngắn này, tôi muốn giải thích những phương pháp hay nhất về tối ưu hóa hiệu suất mà bạn có thể thực hiện và tại sao.

Một số câu hỏi về sử dụng http / 2?

Điều quan trọng nhất bạn nên biết về HTTP / 2 mới là nó không còn yêu cầu yêu cầu mới cho mỗi tệp. Đây là sửa đổi làm cho các nguyên tắc tối ưu hóa hiệu suất của chúng tôi thay đổi đáng kể. Trong thế giới HTTP1 / HTTP / 1.1, việc kết hợp các tệp JS & CSS và thậm chí cả hình ảnh sẽ nhanh hơn, vì vậy sẽ có ít yêu cầu hơn giữa trình duyệt và máy chủ. Trong thế giới HTTP / 2, kiểu tối ưu hóa này không còn cần thiết nữa và thậm chí có thể trở nên phản tác dụng.

Chúng ta có thể sử dụng http 2 rồi chứ?

Câu trả lời là, khá đơn giản: có. Nếu trang web của bạn đang chạy trên HTTPS, thì tất cả các trình duyệt chính hiện tại đều hỗ trợ HTTP / 2. Bạn hoặc công ty lưu trữ của bạn có thể phải thay đổi cấu hình máy chủ để đảm bảo nó hỗ trợ HTTP / 2, nhưng chỉ có vậy. Một số trình duyệt cũ hơn có thể không sử dụng được, nhưng trang web của bạn sẽ vẫn hoạt động với chúng.

Chúng ta có nên sử dụng HTTP / 2 ?

Có, bạn nên sử dụng HTTP / 2! Nó nhanh hơn rất nhiều so với HTTP1 kiểu cũ và khi bạn thiết lập nó tốt, hầu hết khách truy cập của bạn sẽ được hưởng lợi rất nhiều.

HTTP / 2 có nghĩa là không cần CDN?

Ngay cả với HTTP / 2, bạn vẫn cần CDN. CDN cung cấp nội dung nhanh hơn rất nhiều so với máy chủ trung bình của bạn, vì vậy trang web của bạn sẽ vẫn được hưởng lợi rất nhiều nếu có một CDN. Mọi CDN thích hợp sẽ hỗ trợ HTTP / 2.

Các phương pháp hay nhất về hiệu suất đã thay đổi

Các phương pháp hay nhất về hiệu suất sau đây không còn cần thiết với HTTP / 2 nữa và nên loại bỏ:

  • Nối các tệp CSS JS: vì việc giảm số lượng yêu cầu không còn là vấn đề nữa, nên không có lý do gì để làm điều này nữa. Nén file vẫn còn đủ.
  • Image split: chia nhỏ ảnh là thực hành kết hợp một số hình ảnh nhỏ thành một hình ảnh lớn hơn để giảm số lượng yêu cầu. Đây là một quá trình rườm rà với khá nhiều chi phí và HTTP / 2 hoàn toàn loại bỏ sự cần thiết của nó.
  • Domain sharding: Mặc dù điều này hơi ít phổ biến hơn, một số trang web nặng đã sử dụng nhiều miền CDN để phân phát tệp của họ. Điều này là do một trình duyệt chỉ có thể mở tám kết nối song song với một máy chủ trong thế giới HTTP / 1 và họ muốn cung cấp nhiều tệp song song hơn. Vì HTTP / 2 loại bỏ nhu cầu kết nối song song vì có thể tải xuống song song trong một kết nối, phương pháp hay nhất này trở nên phản tác dụng. Việc sử dụng nhiều miền CDN thực sự có nghĩa là nhiều yêu cầu DNS, điều này làm chậm trang web thay vì tăng tốc. (Steve Souders, cha đỡ đầu của hiệu suất web, đã dự đoán vào năm 2013 rằng khi HTTP / 2 trở nên phổ biến, tính năng phân vùng miền sẽ biến mất.)
  • Inlining CSS and JS: inlining của CSS và JS là một phương pháp được Google đẩy mạnh. Vì CSS và JS là nội tuyến, nó không thể được lưu vào bộ nhớ cache đúng cách. Vì yêu cầu tệp nhỏ hiện không có thêm chi phí, có thể loại bỏ phương pháp hay nhất này.

Google PageSpeed ​​và HTTP / 2

Thật không may, công cụ Tốc độ trang của Google và nhiều công cụ kiểm tra hiệu suất web khác khá chậm trong việc áp dụng HTTP / 2. Nếu một bài kiểm tra HTTP / 2 đơn giản cho bạn thấy rằng một trang web có khả năng sử dụng HTTP / 2, thì khá nhiều đề xuất về tốc độ trang web sẽ được đưa ra. 

Đọc thêm: Tốc độ trang web: công cụ và đề xuất

Quý khách có thể tham khảo hơn ở các dịch vụ do websitehcm.com cung cấp như: dịch vụ seo, dịch vụ viết content , dịch vụ chăm sóc website, dịch vụ thiết kế website 

Leave a Reply