KeepAlive

这几天一直在调整服务器设置 发现后台服务程序总是各种异常 连接本地API具体也会报网络错误 查了N多资料 发现原来是KeepAlive保持 住了 再加上后台服务程序运算过快 导致超过了连接处理速度。。。
     虽然问题还要观察但是知识点先记录下来 顺便补充下 这里我觉得动态网页不一定要关闭keepalive 如果是这种运行在本地后台的服务才应该关闭 因为发送速度太快了 如果是运行在异地算上网络时间应该就保持默认即可

案例说明(来源互联网):

  假设 KeepAlive 的超时时间为 10 秒种,服务器每秒处理 50 个独立用户访问,那么系统中Apache的总进程数就是 10 * 50 = 500 个,如果一个进程占用 4M 内存,那么总共会消耗2G内存,所以可以看出,在这种配置中,相当消耗内存,但好处是系统只处理了 50次 TCP 的握手和关闭操作。

  如果关闭 KeepAlive,如果还是每秒50个用户访问,如果用户每次连续的请求数为3个,那么 Apache 的总进程数就是 50 * 3 = 150 个,如果还是每个进程占用 4M 内存,那么总的内存消耗为600M,这种配置能节省大量内存,但是,系统处理了 150 次 TCP 的握手和关闭的操作,因此又会多消耗一些 CPU 资源。

  5、总结

  (1)如果内存和CPU都足够,开启和关闭KeepAlive对性能影响不大。

  (2)如果考虑服务器压力,如果是静态页面,大量的调用js或者图片的话,建议开启KeepAlive;如果是动态网页,建议关闭KeepAlive。

时间: 2024-12-28 14:37:40

KeepAlive的相关文章

nginx负载均衡+keepalive心跳检测

环境标准: 一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一 内核:2.6.32-642.el6.x86_64 系统:CentOS release 6.8 (Final) ip: web01:10.0.0.8 nginx 解析手机端 均做了nginx的负载均衡但是只均衡一台机器可以后续往里填 web02:10.0.0.200 nginx 解析电脑端 均做了nginx的负载均衡但是只均衡一台机器可以后续往里填 lb01

linux下netstat --timers / -o详解及keepalive相关

在linux查看网络连接数或者网络状态,我一般用netstat或者lsof这两种,netstat的话有个时间计时功能,里面涉及到不少tcp/ip协议的知识,今天就来说一说我理解的netstat计时功能. netstat -altpno 或者 netstat -altpn --timers,看显示结果: Proto Recv-Q Send-Q Local Address    Foreign Address   State  PID/Program name  Timer 可以看到显示的标题,多出

linux下netstat --timers / -o详解及keepalive相关 2

在linux查看网络连接数或者网络状态,我一般用netstat或者lsof这两种,netstat的话有个时间计时功能,里面涉及到不少tcp/ip协议的知识,今天就来说一说我理解的netstat计时功能. netstat -altpno 或者 netstat -altpn --timers,看显示结果: Proto Recv-Q Send-Q Local Address    Foreign Address   State  PID/Program name  Timer 可以看到显示的标题,多出

keep-alive详解

我们都知道,HTTP协议采用"请求-应答"模式,当使用普通模式,即非Keep-alive模式时,每个请求/应答客户和服务器都要新建一个连接,完成之后立即断开连接(HTTP协议为无连接的协议):当使用Keep-alive模式时(又称持久连接,连接重用)时,Keep-alive功能使客户端到服务器端的连接持续有效,当出现对服务器的后续请求时,Keep-alive避免了重新建立连接. 在老的HTTP版本中,每个请求都将被创建一个新的客户端到服务器端的连接,在这个连接上发送请求,然后接受请求.

HTTP Keep-Alive详解

HTTP是一个请求<->响应模式的典型范例,即客户端向服务器发送一个请求信息,服务器来响应这个信息.在老的HTTP版本中,每个请求都将被创建一个新的客户端->服务器的连接,在这个连接上发送请求,然后接收请求.这样的模式有一个很大的优点就是,它很简单,很容易理解和编程实现:它也有一个很大的缺点就是,它效率很低,因此Keep-Alive被提出用来解决效率低的问题. Keep-Alive功能使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新

HTTP协议头部与Keep-Alive模式详解(转)

转自:http://a280606790.iteye.com/blog/1095085 http1.1 中怎么打开持久连接,怎么关闭,怎么传输数据(确定本次数据是否传输完毕) 1.什么是Keep-Alive模式? 我们知道HTTP协议采用“请求-应答”模式,当使用普通模式,即非KeepAlive模式时,每个请求/应答客户和服务器都要新建一个连接,完成 之后立即断开连接(HTTP协议为无连接的协议):当使用Keep-Alive模式(又称持久连接.连接重用)时,Keep-Alive功能使客户端到服

&#8203;Keepalive实现mysql双主热备

Keepalive实现mysql双主热备 环境描述: OS: CentoOS6.6_X64 Node1:172.16.10.1 Node2:172.16.10.2 VIP:172.16.10.10 1.配置主机互信 Node1: [[email protected]~]# ifconfig eth0 eth0      Link encap:Ethernet  HWaddr 00:0C:29:11:21:56            inet addr:172.16.100.1  Bcast:17

HTTP Keep-Alive的作用

作用:Keep-Alive:使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接.Web服务器,基本上都支持HTTP Keep-Alive. 缺点:对于提供静态内容的网站来说,这个功能通常很有用.但是,对于负担较重的网站来说,虽然为客户保留打开的连 接有一定的好处,但它同样影响了性能,因为在处理暂停期间,本来可以释放的资源仍旧被占用.当Web服务器和应用服务器在同一台机器上运行时,Keep- Alive功能对资源利用的影响尤其突出. 解

nginx +keepalive +tomcat

框架 keepavlive master 192.168.178.134 keepavlive backup 192.168.178.135 vip 192.168.178.132 nginx 192.168.178.134 nginx 192.168.178.135 tomcat 192.168.178.135 8080 8081 tomcat 192.168.178.135 8080 8081 keepavlive  master安装 wget http://www.keepalived.o

浅谈http中的KeepAlive

首先就看一下KeepAlive出现的原因吧:  当一个客户端向服务器发送http请求时,两者之间会建立一个tcp连接,然后服务器发回响应信息同时关闭连接.如果请求的的页面中含有别的资源连接,比 如图片.flsah等,就会再次创建连接.KeepAlive的作用就是在第一次创建连接时,服务器会把这个tcp连接保持一段时间(服务器端会有一个 keepaliveTime的最大时间,超过时间就断开连接).这样就不会频繁的去建立tcp连接,同一次请求中的信息传递都可以使用同一个tcp连接. KeepAliv