今天继续给大家介绍Linux运维的相关知识,本文主要内容是Apache的长链接功能设置实战。

一、开启长链接的效果

当Apache服务器开启长链接Keepalive后,会减少TCP三次握手的时间,但是会消耗服务器内存来维持链接。因此,是否开启长链接,以及合理的配置长链接失效时间,需要根据具体的业务场景来定。
如果设置不开启长链接,或者开启长链接但是链接失效时间很短,就可能出现客户端频繁链接Apache服务器的场景,会消耗系统资源,并且使得业务响应时间变长;如果开启长链接并且设置链接失效时间很长,那么Apache服务器中就会存在很多可以关闭但是还在维持的链接,也会消耗系统资源,影响正常服务的提供。
因此,网站是否开启长链接以及链接失效时间的设定,需要看网站的业务、流量大小以及服务器的硬件设备。

二、开启长链接实战

Apache开启长链接设置非常简单,只需要在Apache的主配置文件中,找到如下红线位置:

该处原本是在#注释内,删除#将其解锁,就可以配置引用conf/extra目录下的httpd-default.conf文件,该文件如下所示:

在该文件中,有三个参数,KeepAlive表示的是是否开启长链接功能,On表示开启,Off表示关闭。在该参数配置为开启的情况下,Timeout为链接失效时间,单位为秒,Timeout的值表示以下三种事件的时间长度:
1、接受一个GET请求所耗费的时间。
2、POST或者是PUT请求时,接受两个TCP包之间的时间。
3、应答时,两个TCP包传输中两个ACK包之间的时间。
MaxKeepAliveRequests表示链接失效请求次数,当超出该参数设定的次数时,长链接也会失效。

三、案例剖析

从上可以看出,其实Apache配置开启长链接非常简单,但是问题在于我们需要合理的进行配置。下面来看一下案例:
假设一个Apache服务器每秒需要处理50个访问请求,每个访问请求并发的请求数为每秒2个,每个请求需要耗费4M内存,如果长链接失效时间设定为60秒,则系统中Apache进程的总数为5060,为3000个,需要耗费30004M=12G的内存,在这种情况下,系统以消耗12G内存的代价,换来的是只处理50次TCP三次握手和四次挥手操作。如果关闭长链接,则会消耗50*4M的内存,约有200M,而每秒需要处理的TCP链接数则为100次。
综上所述,对于长链接是否开启我们通常遵循以下原则:
1、如果内存和CPU都足够,则无论是否开启长链接都不受影响。
2、如果存在一种情况,客户端会频繁的访问服务器资源,则建议开启长链接功能。
最后,给出一个生产环境中的默认配置:开启长链接,长链接失效时间为30秒,长链接失效次数为100。这样的配置,在一般的业务场景下,可以兼顾内存和CPU,起到比较好的效果。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

LAMP架构调优(六)——开启长链接相关推荐

  1. LAMP 系统性能调优

    1.LAMP 系统性能调优,第 1 部分: 理解 LAMP 架构 http://www.ibm.com/developerworks/cn/linux/l-tune-lamp-1/index.html ...

  2. lamp mysql大小限制_[转]LAMP 系统性能调优,第 3 部分: MySQL 服务器调优

    有 3 种方法可以加快 MySQL 服务器的运行速度,效率从低到高依次为: 替换有问题的硬件. 对 MySQL 进程的设置进行调优. 对查询进行优化. 迁移到 DB2 您正在寻找一种干净利落.无成本的 ...

  3. LAMP 系统性能调优,第 3 部分: MySQL 服务器调优(转)

    关于 MySQL 调优 有 3 种方法可以加快 MySQL 服务器的运行速度,效率从低到高依次为: 替换有问题的硬件. 对 MySQL 进程的设置进行调优. 对查询进行优化. 迁移到 DB2? 您正在 ...

  4. CentOS7 Apache调优之开启deflate压缩模块

    启用Apache的deflate模块,可以开启压缩功能,减小网站传输时的带宽. apache需要编译安装方式,以/usr/local/apache为apache的安装目录,以源码包/usr/local ...

  5. GBASE赛事 | ICDIS数据库参数调优大赛开启报名

    7月14日,由南大通用数据技术股份有限公司联合广东省安全智能新技术重点实验室.哈尔滨工业大学(深圳)主办的"ICDIS数据库参数调优大赛"开始报名.本次大赛将聚焦于开源数据库MyS ...

  6. LAMP 系统性能调优:第2 部分: 优化Apache 和PHP-学习笔记

    二 配置MPM  Apache 是模块化的,因为可以轻松添加和移除特性.在Apache 的核心,多处理模块(Multi-Processing Module,MPM )提供了这种模块化功能性-- 管理网 ...

  7. java gc log调优_Java 开启 gc 日志

    构建一个 jar 包程序 使用 Spring Boot 构建一个简单的 web 程序,可以直接使用 java -jar 来启动. @RestController @RequestMapping(&qu ...

  8. JVM调优:开启/关闭TLAB和逃逸分析耗时对比

  9. LAMP之apache调优

    本节所讲内容: LAMP之apache调优 15.1 隐藏apache版本信息 15.2 设置错误页面-开启压缩和缓存功能 15.3 开启长连接功能 15.4 apache运行模式-prefork-w ...

  10. JVM原理及调优--网页链接收藏

    此篇用于收藏大神们关于JVM原理及调优通俗易懂的文章链接,用于随时查看 JVM调优总结 JVM参数配置大全 JVM调优:选择合适的GC collector 菜菜鸟想了解下大概的JVM内存模型可以看这个 ...

最新文章

  1. XML 标签 首字母转换为大写
  2. Linux下查看Go语言软件运行情况
  3. android双击熄屏代码,Android响应双击屏幕事件
  4. fragment+viepager 的简单暴力的切换方式
  5. Unity3D之主菜单
  6. Brocade光纤交换机FOS升级
  7. 非对称加解密,私钥和公钥到底是谁来加密,谁来解密?
  8. Linux shell multifile content replace with sed
  9. 加州理工学院对高超声速飞行的早期研究
  10. java imageicon 路径_java awt ImageIcon icon 相对路径设置
  11. 《盘古开天地》的故事内容,《盘古开天地》的启示
  12. 服务端_多面手之服务端测试
  13. python安装pytesser模块
  14. 把3000行代码重构成15行的牛逼操作!!!
  15. http和https连接下载
  16. 电子海图系统线状符号表达及绘制方法
  17. 【CTFhub】彩蛋篇_持续更新
  18. javaee实训报告总结_javaee实训总结
  19. 小时候玩过的游戏之八——玻璃弹珠
  20. Trimmed 稳健均值估计与 中位数-中位数配对偏差法估计标准差——理论与 Python 实现

热门文章

  1. NLP学习—20.WMD paper及代码
  2. NLP基础—1.NLP概述
  3. Linux基础—1.Linux系统(CentOS6.7)详细安装过程
  4. 服务器远程登录工具、文件运行以Python为例
  5. 李宏毅机器学习——结构化支持向量机
  6. MYSQL的用户变量(@)和系统变量(@@)
  7. 蓝桥杯2015年第六届C/C++省赛B组第二题-星系炸弹
  8. 7-8 猜数字 (20 分)
  9. nginx详解反向代理,负载均衡,LNMP架构上线动态网站
  10. 定义工作,解读自我——IT帮2019年2月线下活动回顾