Home Common Problem The difference between http2.0 and http1.1

The difference between http2.0 and http1.1

Jun 03, 2019 am 11:04 AM
http

What is HTTP 2.0?

HTTP/2 (Hypertext Transfer Protocol version 2, originally named HTTP 2.0), is the second major version of the HTTP protocol. Used on the World Wide Web. HTTP/2 is the first update of the HTTP protocol since the release of HTTP 1.1 in 1999. It is mainly based on the SPDY protocol (a TCP-based application layer protocol developed by Google to minimize network delays, increase network speed, and optimize users' network usage. experience).

The difference between http2.0 and http1.1

Compared with HTTP 1.1, the main differences include:

HTTP/2 uses a binary format instead of a text format

HTTP/2 is fully multiplexed, not ordered and blocking - only one connection is needed for parallelism

Using header compression, HTTP/2 reduces overhead

HTTP/2 allows the server to actively "push" responses to the client cache

Recommended course: PHP Tutorial.

Why is HTTP/2 binary?

Compared to text protocols like HTTP/1.x, binary protocols are more efficient to parse, more compact "online", and more importantly, have fewer errors.

Why does HTTP/2 require multiplexing?

HTTP/1.x has a problem called head-of-line blocking , it means that it is more efficient for a connection to submit only one request at a time. If there are more requests, it will become slower. HTTP/1.1 tried to use pipelining to solve this problem, but the effect was not ideal (large data volume or slow response will hinder the requests behind it). In addition, due to the network media (intermediary) And the server cannot support the pipeline well, making deployment difficult. Multiplexing can solve these problems very well, because it can handle multiple message requests and responses at the same time; it can even mix one message with another during the transmission process. So the client only needs one connection to load a page.

Why do message headers need to be compressed?

Assume that a page has 80 resources to load (this number is quite conservative for today’s Web) , and each request has a 1400-byte message header (which is also not uncommon due to the existence of cookies and references), and it takes at least 7 to 8 back and forth "online" to obtain these message headers. That doesn't include response time - that's just the time it takes to get them back from the client. This is all due to TCP's slow-start mechanism, which determines which packets to fetch back and forth based on how many known packets there are - which obviously limits the number of packets that can be sent in the first few round-trips. In contrast, even slight compression of the headers can allow those requests to be processed in just one round trip - sometimes even one packet. This overhead can be saved, especially when you consider mobile client applications, which even under good conditions typically see round-trip latencies of several hundred milliseconds.

What are the benefits of server push?

When the browser requests a web page, the server will send back HTML. Before the server starts sending JavaScript, images, and CSS, the server needs to wait for the browser to parse the HTML and send all inline Resource requests. The server push service avoids round-trip delays by "pushing" content it thinks the client will need into the client's cache.

The above is the detailed content of The difference between http2.0 and http1.1. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What does http status code 520 mean? What does http status code 520 mean? Oct 13, 2023 pm 03:11 PM

HTTP status code 520 means that the server encountered an unknown error while processing the request and cannot provide more specific information. Used to indicate that an unknown error occurred when the server was processing the request, which may be caused by server configuration problems, network problems, or other unknown reasons. This is usually caused by server configuration issues, network issues, server overload, or coding errors. If you encounter a status code 520 error, it is best to contact the website administrator or technical support team for more information and assistance.

What is http status code 403? What is http status code 403? Oct 07, 2023 pm 02:04 PM

HTTP status code 403 means that the server rejected the client's request. The solution to http status code 403 is: 1. Check the authentication credentials. If the server requires authentication, ensure that the correct credentials are provided; 2. Check the IP address restrictions. If the server has restricted the IP address, ensure that the client's IP address is restricted. Whitelisted or not blacklisted; 3. Check the file permission settings. If the 403 status code is related to the permission settings of the file or directory, ensure that the client has sufficient permissions to access these files or directories, etc.

Understand common application scenarios of web page redirection and understand the HTTP 301 status code Understand common application scenarios of web page redirection and understand the HTTP 301 status code Feb 18, 2024 pm 08:41 PM

Understand the meaning of HTTP 301 status code: common application scenarios of web page redirection. With the rapid development of the Internet, people's requirements for web page interaction are becoming higher and higher. In the field of web design, web page redirection is a common and important technology, implemented through the HTTP 301 status code. This article will explore the meaning of HTTP 301 status code and common application scenarios in web page redirection. HTTP301 status code refers to permanent redirect (PermanentRedirect). When the server receives the client's

How to use Nginx Proxy Manager to implement automatic jump from HTTP to HTTPS How to use Nginx Proxy Manager to implement automatic jump from HTTP to HTTPS Sep 26, 2023 am 11:19 AM

How to use NginxProxyManager to implement automatic jump from HTTP to HTTPS. With the development of the Internet, more and more websites are beginning to use the HTTPS protocol to encrypt data transmission to improve data security and user privacy protection. Since the HTTPS protocol requires the support of an SSL certificate, certain technical support is required when deploying the HTTPS protocol. Nginx is a powerful and commonly used HTTP server and reverse proxy server, and NginxProxy

Send POST request with form data using http.PostForm function Send POST request with form data using http.PostForm function Jul 25, 2023 pm 10:51 PM

Use the http.PostForm function to send a POST request with form data. In the http package of the Go language, you can use the http.PostForm function to send a POST request with form data. The prototype of the http.PostForm function is as follows: funcPostForm(urlstring,dataurl.Values)(resp*http.Response,errerror)where, u

Quick Application: Practical Development Case Analysis of PHP Asynchronous HTTP Download of Multiple Files Quick Application: Practical Development Case Analysis of PHP Asynchronous HTTP Download of Multiple Files Sep 12, 2023 pm 01:15 PM

Quick Application: Practical Development Case Analysis of PHP Asynchronous HTTP Download of Multiple Files With the development of the Internet, the file download function has become one of the basic needs of many websites and applications. For scenarios where multiple files need to be downloaded at the same time, the traditional synchronous download method is often inefficient and time-consuming. For this reason, using PHP to download multiple files asynchronously over HTTP has become an increasingly common solution. This article will analyze in detail how to use PHP asynchronous HTTP through an actual development case.

Common network communication and security problems and solutions in C# Common network communication and security problems and solutions in C# Oct 09, 2023 pm 09:21 PM

Common network communication and security problems and solutions in C# In today's Internet era, network communication has become an indispensable part of software development. In C#, we usually encounter some network communication problems, such as data transmission security, network connection stability, etc. This article will discuss in detail common network communication and security issues in C# and provide corresponding solutions and code examples. 1. Network communication problems Network connection interruption: During the network communication process, the network connection may be interrupted, which may cause

HTTP 200 OK: Understand the meaning and purpose of a successful response HTTP 200 OK: Understand the meaning and purpose of a successful response Dec 26, 2023 am 10:25 AM

HTTP Status Code 200: Explore the Meaning and Purpose of Successful Responses HTTP status codes are numeric codes used to indicate the status of a server's response. Among them, status code 200 indicates that the request has been successfully processed by the server. This article will explore the specific meaning and use of HTTP status code 200. First, let us understand the classification of HTTP status codes. Status codes are divided into five categories, namely 1xx, 2xx, 3xx, 4xx and 5xx. Among them, 2xx indicates a successful response. And 200 is the most common status code in 2xx