LAMP架构调优(六)——开启长链接

简介: LAMP架构调优(六)——开启长链接

今天继续给大家介绍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
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/122652684

目录
相关文章
|
1月前
|
存储 缓存 运维
LAMP架构调优(五)——网页缓存设置
LAMP架构调优(五)——网页缓存设置
19 1
|
21天前
|
监控 测试技术 数据库
探索微服务架构下的系统调优实践
【5月更文挑战第27天】在当今软件开发领域,微服务架构因其灵活性、可扩展性而受到青睐。然而,随之而来的是复杂性增加和性能调优的挑战。本文将深入探讨在微服务环境中进行系统调优的策略与实践,通过分析真实案例,揭示优化过程中的关键步骤和考虑因素,为追求高性能微服务系统的开发者提供参考。
31 1
|
1月前
|
监控 Java 数据库
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
54 0
|
1月前
|
XML 运维 前端开发
LAMP架构调优(四)——资源压缩传输
LAMP架构调优(四)——资源压缩传输
14 0
|
1月前
|
运维 Linux Apache
LAMP架构调优(三)——模块的安装与调用
LAMP架构调优(三)——模块的安装与调用
12 0
|
1月前
|
运维 Linux Apache
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
203 2
|
1月前
|
运维 Linux Apache
LAMP架构调优(九)——Apache Rewrite功能实战
LAMP架构调优(九)——Apache Rewrite功能实战
20 1
|
1月前
|
运维 安全 Linux
LAMP架构调优(八)——Apache Worker模式调优
LAMP架构调优(八)——Apache Worker模式调优
18 0
|
4天前
|
监控 Cloud Native 开发者
云原生技术浪潮下的微服务架构实践
云原生技术正引领着现代软件开发的潮流,其中微服务架构作为其核心理念之一,为复杂应用提供了灵活、可扩展的解决方案。本文将探讨在云原生环境下实施微服务架构的策略和挑战,并结合实际案例分析微服务设计的最佳实践,旨在为开发者提供一套可行的微服务部署与管理指南。
|
4天前
|
消息中间件 监控 API
构建微服务架构:从理论到实践的全面指南
本文将深入探讨微服务架构的设计原则、实施步骤和面临的挑战。与传统的单体架构相比,微服务通过其独立性、可伸缩性和灵活性,为现代应用开发提供了新的视角。文章将介绍如何从零开始规划和部署一个微服务系统,包括选择合适的技术栈、处理数据一致性问题以及实现服务间通信。此外,我们还将讨论在迁移至微服务架构过程中可能遇到的技术和组织挑战,以及如何克服这些难题以实现顺利过渡。