HTTP相关技术介绍

cookie

由于HTTP是无状态的,为了实现能保存连接的状态,就有了cookie技术。

HTTP keep-alive

HTTP的初始版本中,每进行一次通信,都需要新创建一次连接。为了减少重复建立和断开连接的开销,减轻服务器的开销,就有了HTTP keep-alive技术,持久连接的特点是,只要任意一方没有明确提出断开连接,则保持TCP连接状态。
持久连接使得多次请求以管线化(pipelining)方式发送成为可能,然后异步接收响应。
在HTTP/1.1版本中,所有的连接默认都是持久连接。

提升传输效率的方法

  • 压缩传输的内容,常用的压缩编码有:gzip, compress, deflate, identity
  • 分块传输编码(Chunked Transfer Coding)
  • 发送多种数据的集合,MIME(Multipurpose Internet Mail Extensions),允许处理文本、图片、视频等多个不同类型的数据。
  • 范围请求(Range Request),可实现断点续传。
  • 内容协商机制,常用的字段有:Accept, Accept-Charset, Accept-Encoding, Accept-Language, Content-Language。

HTTP状态码

状态码 类别 原因短语
1XX 信息性状态码 接收的请求正在处理
2XX 成功状态码 请求正常处理完毕
3XX 重定向状态码 需要进行附加操作以完成请求
4XX 客户端错误状态码 服务器无法处理请求
5XX 服务器错误状态码 服务器处理请求出错

HTTP代理服务器作用

  • 利用缓存技术减少流量
  • 特定网络的访问控制
  • 获取访问日志

HTTPS

为了提高通信的安全性,出现了HTTPS技术,可简单理解为:HTTP + 双向认证 + 加密 + 完整性校验
HTTPS其实是身披SSL协议的HTTP:

HTTP HTTPS
HTTP HTTP
* SSL
TCP TCP
IP IP

HTTPS交互过程中,先使用公开密钥加密技术进行协商通信加密密钥master secret,然后使用共享密钥加密技术和加密密钥master secret进行数据通信。
注意:HTTPS比HTTP慢2到100倍,所以在包含个人信息等敏感信息时,才使用HTTPS进行通信。

提高HTTP性能的技术

  • Ajax
  • Comet
  • SPDY(SPeeDY),处于HTTP和SSL之间。
  • WebSocket,即Web浏览器与Web服务器之间全双工通信标准,服务器可不必等待请求,直接发送数据。

XML

HTML不适合记录数据,XML则可以很好地复用数据。

你可能感兴趣的:(HTTP相关技术介绍)