码迷,mamicode.com
首页 > 编程语言 > 详细

python-高级编程-06-长连接&连接池

时间:2017-08-26 14:25:31      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:服务   多个   keepalive   网络   模式   建立   优化   调用   协议   

我们都知道tcp是基于连接的协议,其实这个连接只是一个逻辑上面的概念,在ip层来看,tcp和udp仅仅是内容上稍有差别而已。

tcp 的连接仅仅是连接两端对于四元组和sequence号的一种约定而已

四元组:源IP 目的IP 源端 目的端口

五元组 :源IP 目的IP 源端 目的端口 协议

七元祖:源IP 目的IP 源端 目的端口 协议 服务类型 接口索引

在性能比较敏感的程序中,为了节省TCP网络调用建立连接三次握手的时间,很多程序都会采用复用之前已经建立过的连接方式来优化

在加上往往是  “请求 响应 请求 响应”的模式 单个连接限制了QPS的提升 所以会采取开启多个连接组 组成一个‘池子‘的方式来优化性能,

我们称之为"连接池“

http的长连接

  及http持久连接,也称作 http keep-alive 是使用同一个TCP连接来发送和接受多个HTTP请求/应答,而不是为每一个新的请求都新建一个连接

如果浏览器支持keep-alive 它会在包头连接

Connection:Keep-Alive

当服务器收到请求,做出回应的时候 它也会在添加这个到响应中 

这样做的话 连接就不会中断,而是保持连接 当客户端发送另一个请求,它会使用同一个连接 这样持续到客户端或服务器端认为回话结束,其中一方断开

在HTTP 1.1 中所有的连接默认都是持续连接,除非特殊声明不支持。http持久连接不使用独立的keepalive信息 而是仅仅允许多个请求使用单个连接

 

python-高级编程-06-长连接&连接池

标签:服务   多个   keepalive   网络   模式   建立   优化   调用   协议   

原文地址:http://www.cnblogs.com/nerdlerss/p/7435158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!