姓名:刘浩然。 2020年大目标Python

如何管理代理服务器的长短连接

一、http连接的常见流程

浏览器解析出主机名
浏览器查询这个主机名的IP地址(DNS)
浏览器获得服务端端口
浏览器发起请求到到服务器
浏览器向服务器发送一条HTTP GET报文
浏览器从服务器读取HTTP响应报文
浏览器关闭连接

二、从TCP编程看HTTP请求处理过程

1.服务端:创建套接字(socket);将套接字绑定到端口上(bind);允许套接字进行连接(listen);等待连接(accept)
2.客户端:获取服务端ip地址和端口号;创建套接字(socket);连接到服务器ip:port上(connect)
3.服务端:通知应用程序有连接进来;开始读取请求(read)
4.客户端:连接成功;发送HTTP请求(write);等待HTTP响应(read)
5.服务端:处理HTTP请求报文;回送HTTP响应(write);关闭连接(close)
6.客户端:处理HTTP响应;关闭连接(close)

3、短连接和长连接

短链接:处理请求1,响应1,关闭;处理请求2,响应2,关闭;...
长连接:客户端和服务端连接长连接后,就可以出来第一个请求、第二个请求..最后关闭。
长连接由connection头部支持的,

 

4、connection仅针对当前连接有效

代理服务器认得长连接(有长连接功能),但是没有开的情况下,可以将长连接传到上游服务器

 

posted @ 2019-10-25 15:48  pluto2charon  阅读(290)  评论(0编辑  收藏  举报