Skip to content

HTTP、HTTP2和HTTPS的区别 #44

Description

@bai3

HTTP、HTTP2和HTTPS的区别

HTTP特性

  • 无状态

    即当客户端访问一次服务器再次访问的时候,服务器是无法知道这个客户端是否已经访问过

  • 持久链接

    HTTP1.1使用持久连接keepalive,所谓持久连接,就是服务器在发送响应之后仍然在一段时间内保持这条连接,允许在同一连接中存在多次数据请求和响应

  • 支持客户/服务器模式

缺陷

  • 耗时

    每次传输数据都要建立连接

  • 不安全

    HTTP是明文传输,所有东西都可见

  • header内容过大

  • keepalive压力过大

    当传输的文件的数据特别大的时候,会对服务器造成大量性能压力

HTTP2 特性

  • 二进制帧

    HTTP1的解析基于文本,HTTP2会将传输的信息分割为更小的消息和帧,然后采用二进制的格式进行编码

  • 多路复用

    所有的请求都是通过一个TCP链接并发完成。

  • 流量控制和流的优先级

  • 服务器端推送

    服务器端的推送,就是服务器可以对一个客户端请求发送多个响应。

  • 首部压缩(对应HTTP1 heade内容过大)

HTTPS特性

  • HTTPS协议需要申请证书
  • HTTPS是使用具有安全性的ssl加密传输协议
  • HTTPS端口使用443
  • HTTPS协议是由SSL+HTTP协议构建的可进行加密传输,身份认证的网络协议

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions