当前位置: 首页 > news >正文

佛山行业网站设计我想网上做网站

佛山行业网站设计,我想网上做网站,网站开启伪静态,网站接入服务商1. HTTP长连接和短连接的定义 HTTP长连接 浏览器向服务器进行一次HTTP会话访问后#xff0c;并不会直接关闭这个连接#xff0c;而是会默认保持一段时间#xff0c;那么下一次浏览器继续访问的时候就会再次利用到这个连接。在HTTP/1.1版本中#xff0c;默认的连接都是长连…1. HTTP长连接和短连接的定义 HTTP长连接 浏览器向服务器进行一次HTTP会话访问后并不会直接关闭这个连接而是会默认保持一段时间那么下一次浏览器继续访问的时候就会再次利用到这个连接。在HTTP/1.1版本中默认的连接都是长连接我们可以通过Connection: keep-alive字段进行指定。HTTP短连接 浏览器向服务器每进行一次HTTP操作都要建立一个新的连接。在HTTP/1.0版本中默认是短链接 2.  HTTP长连接本质 HTTP协议本质是OSI七层参考模型中的应用层协议而网络进行通信的时候都是通过上层协议封装头部后作为下层协议的数据部分进行封装的而实际中我们经常接触的是TCP/IP协议簇也就是传输层利用TCP协议和网络层利用IP协议。因此HTTP协议的长连接本质上就是TCP的长连接。 2.1 TCP建立连接回顾 上面我们提到了TCP那么回顾一下通信双方在进行通信的时候就是要通过“三次握手“来建立连接的握手的过程大致如图1所示 那么通过上图我们就可以清楚的看到服务器和客户端都建立了一个TCB传输控制块这里就是我们进行socket编程的时候管理连接的地方在这里我们先标记这个TCB,在后续的文章我们会详细介绍在Linux中TCB是怎么样管理连接的。 2.2  TCP释放连接回顾 在回顾了TCP连接建立之后我们不妨再来看看TCP四次挥手如图2所示 TCP连接的释放是看通信双方谁是主动关闭的一方谁是被动关闭的一方来决定各自状态的具体的内容大家依然可以参考《TCP/IP详解》这里就不再赘述了。 2.3 TCP长连接 在建立了TCP连接之后这也就到了这篇文章中比较核心的问题就是说TCP连接建立之后并不会在完成一次数据通信后就关闭连接而是要保持一段时间那么这个时间是怎么样保证又是谁保证的呢 2.3.1 TCP保活机制 为什么要有保活机制 第一点自然是我们这篇文章的主题通过保活机制我们可以保证通讯双方的连接不被释放掉第二点就是在另一些情况下如果客户端或者服务器发生了错误或者宕机那么就可以依靠这种保活机制探测出网络通信出现了问题进而可以释放掉这种错误连接。保活机制 首先保活机制的工作原理就是通过在服务器端设置一个保活定时器当定时器开始工作后就定时的向网络通信的另一端发出保活探测的TCP报文如果接收到了ACK报文那么就证明对方存活可以继续保有连接否则就证明网络存在故障。 上面只是在原理层面简单的介绍根据文献[1]我们可以了解到详细的内容 如果一个给定的连接在两个小时之内没有任何动作则服务器就向客户发送一个探查报文段。客户主机必须处于以下 4个状态之一。 状态1客户主机依然正常运行并从服务器可达。客户的TCP响应正常而服务器也知道对方是正常工作的。服务器在两小时以后将保活定时器复位。如果在两个小时定时器到时间之前有应用程序的通信量通过此连接则定时器在交换数据后的未来2小时再复位。 状态2客户主机已经崩溃并且关闭或者正在重新启动。在任何一种情况下客户的TCP都没有响应。服务器将不能够收到对探查的响应并在75秒后超时。服务器总共发送10个这样的探查每个间隔75秒。如果服务器没有收到一个响应它就认为客户主机已经关闭并终止连接。 状态3客户主机崩溃并已经重新启动。这时服务器将收到一个对其保活探查的响应但是这个响应是一个复位使得服务器终止这个连接。 状态4客户主机正常运行但是从服务器不可达。这与状态2相同因为TCP不能够区分状态4与状态2之间的区别它所能发现的就是没有收到探查的响应。 实际应用 那么我们在了解了理论上TCP长连接是通过保活机制来实现的但是保活机制并不是RFC规定的TCP协议的内容因此有时候在不支持保活机制的机器上往往我们也需要先看一下内核层面是否支持如果不支持需要在应用层自己去实现这个功能。 在这里我们就来看一下Linux相关的TCP保活参数 tcp_keepalive_time单位秒表示发送的探测报文之前的连接空闲时间默认是7200s。 tcp_keepalive_intvl单位秒表示两次探测报文之间的间隔时间默认是75s tcp_keepalive_probes单位秒表示探测的次数默认是9 接下来如果我们需要在应用层写自己的心跳机制那么就需要其他方面的一些内容了。 2.3.2 TCP长连接和短链接比较 TCP短链接 优点 短链接不占服务器的内存服务器能处理的连接数量会比较多缺点 在有实际的资源要进行数据通信的时候才建立连接那么在客户端发送完数据释放连接之后当服务器有向客户端发送数据时就不能做到发送消息的实时性。频繁地建立连接、释放连接会耗费大量的CPU和网络带宽资源。TCP长连接[2] 优点 通信双方因为在保活机制的保证下可以保证数据收发的实时性缺点 因为服务器需要一直保存和客户端的这条链接因为是有状态的那么在大量并发连接请求过来时系统资源可能就不够了。什么时候需要长连接 服务器需要主动发送资源给客户端时客户端和服务器通信很频繁时客户端宕机或者掉线时需要服务器做一些处理时TCP长连接设计时需要考虑的问题 默认的keep-alive时间比较长一般的业务可能不需要这么久的时间socket proxy会让TCP的保活失效多有的proxy应用只能转发TCP的应用数据不能转发TCP协议内部的包
http://wiki.neutronadmin.com/news/312639/

相关文章:

  • 网站设计不包括检查网站是否做301
  • 南昌网站设计有限公司自己做淘宝返利网站吗
  • 建设银行新版网站上线网站开发课程的建议
  • 做专题页的网站wordpress地址和站点地址错
  • 潍坊 网站推广巡视组 住房与城乡建设部网站
  • wordpress最快仿站安徽兴罗建设集团网站
  • 微信网站开发模板网站自动屏蔽恶意点击
  • 学院网站建设需求分析wordpress商品分销
  • 网站建设宣传广告语北京企业官网网站建设
  • 建网站买空间网站服务器证书过期怎么解决
  • 网站流量怎么做的便宜域名
  • 做网站目录嫦娥直播
  • 网站建设 需要准备材料wordpress博客页修改
  • 国内网站设计公司pc网站自动转换wap网站
  • 定制型网站建设服务器哪个网站音乐做的最好
  • 重庆慕尚网站建设wordpress知名主题
  • 北京好的建站团队app软件开发哪个公司好
  • seo做的好的网站 知乎做微信网站
  • 如何使用框架来建设网站淮安网站设计公司
  • php手机网站模板企业网站文案外包
  • 柚段子wordpress主题模板嘉定网站设计制作优化排名
  • 工厂的网站在哪里做的wordpress两个侧边栏
  • 教育培训机构有关的网站网站建设的目标用户是
  • 成都餐饮网站建设销售网站html源码
  • 购物网站怎么建设图书购物网站开发的业务分析
  • 兰州易天网站建设公司有哪些?天津网站建设设计
  • 广州网站推广找哪里手机网站免费模板下载
  • 开发门户网站多少钱一个人可做几次网站备案
  • 公司网站制作应该注意些什么wordpress 付费可见
  • 跳转网站汕头网站制作网站