The advantages of HTTP are simplicity, flexibility, easy expansion, wide application, mature environment, and statelessness; the disadvantages of HTTP are that plain text is unsafe because it is stateless, so it cannot perform multiple consecutive steps of operations, "request-response" ” mode exacerbates HTTP performance problems.
The advantages and disadvantages of HTTP are:
The advantages and disadvantages of HTTP are not absolute and will be displayed in some specific circumstances. The advantages and disadvantages come out, sometimes the advantages can be disadvantages, and sometimes the disadvantages can be advantages.
Related learning recommendations: PHP Programming from entry to master
Characteristics of http:
Flexible and scalable: http is very flexible, in the message There are not too many restrictions in it. As long as you can define your own fields according to its rules, the transmission is not limited to txt text format, but can also transmit any data such as pictures, videos, compressed packages, etc.
Reliability: Because http is based on tcp/ip transmission, because tcp/ip is a connection transmission protocol, it is a reliable transmission. (Reliability is relative, and it would be unreliable without the Internet)
Request-response: http is a request-response communication mode. It is a one-off, one-off agreement that comes and goes.
Stateless: It is a stateless protocol. (Stateless: means that no records are recorded, a link is established every time, and data is sent and received).
Application layer protocol: It is a universal application layer protocol. Don't care about performance http is a protocol that can transmit anything without many limitations, unlike other protocols which are only limited to a small part. For example, FTP can only transfer files, SMTP can only send emails, SSH can only log in remotely, etc., and is "completely unusable" in terms of general data transmission.
Others: In addition to the above five features, the HTTP protocol can actually list many features, such as the transmitted entity data can be cached and compressed, data can be obtained in segments, and identity support Certification, support for international languages, etc. But these cannot be regarded as the basic features of HTTP, because they are all derived from the first "flexible and scalable" feature.
http advantages:
Simple, flexible, easy to expand: because there are not many restrictions, because simplicity can be called Users can extend it themselves.
Widely used and mature environment: Because it is too simple and popular, it is widely used. Because it does not belong to a language, it has no platform or language boundaries, so it is very cross-platform.
Stateless because there are no records. It can reduce the burden on the server and allow more CPU and memory to be used to provide external services. Because it is stateless and has no requirements on servers, it can form a cluster.
http Disadvantages:
Clear text is not safe.
Because it is stateless, it cannot perform multiple consecutive steps. For example: add shopping, checkout, payment. Identity information needs to be verified every time, but it is stateless so it cannot be continuous. The solution is cookie technology.
Performance: The "request-response" mode exacerbates the performance problems of HTTP. This is the famous "Head-of-line blocking" (Head-of-line blocking). When a request in the request sequence is blocked for some reason, all requests queued later will also be blocked, causing the client to be delayed in receiving data. In order to solve this problem, a special research topic "Web Performance Optimization" was born. The official HTTP standard has a "caching" chapter (RFC7234), and there are more unofficial "tricks", such as cutting images, Data embedding and merging, domain name sharding, JavaScript “black technology”, etc.
The above is the detailed content of What are the advantages and disadvantages of HTTP?. For more information, please follow other related articles on the PHP Chinese website!