当前位置:首页 > CN2资讯 > 正文内容

Apache

3天前CN2资讯

Apache 优化与VPS 内存优化  


 

问:为什么服务器在连续运行多天后或访问峰值后,进程中的一个Apache.exe占用内存几百兆不减少?

答:用记事本打开apache2\conf\httpd.conf,

我在centos5上装了kloxo,找了半天 httpd.conf在 /etc/httpd/conf/目录下。

查找MaxRequestsPerChild,将MaxRequestsPerChild 0改成MaxRequestsPerChild 50即可。

 影响apache性能的几个重要参数(conf/httpd.conf中设置)

KeepAlive 是否允许持续连接

MaxKeepAliveRequests 允许的持续连接的最大数

KeepAliveTimeout 持续连接在没有请求多少秒后切断

StartServers 最初启动时启动多少个服务器进程

MinSpareServers 空闲服务器进程的最小数

MaxSpareServers 空闲服务器进程的最大数

MaxClients 同时处理的请求数(最重要的参数,要少于ServerLimit)

MaxRequestsPerChild 每个子进程处理的最大请求数

它们之前的关系:

prefork控制进程在最初建立“StartServers”个子进程后,为了满足 MinSpareServers设置的需要创建一个进程,等待一秒钟,继续创建两个,再等待一秒钟,继续创建四个……如此按指数级增加创建的进程数,最多 达到每秒32个,直到满足MinSpareServers设置的值为止。这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销以增加性能。 MaxSpareServers设置了最大的空闲进程数,如果空闲进程数大于这个值,Apache会自动kill掉一些多余进程。这个值不要设得过大,但 如果设的值比MinSpareServers小,Apache会自动把其调整为MinSpareServers+1。如果站点负载较大,可考虑同时加大 MinSpareServers和 MaxSpareServers。MaxRequestsPerChild设置的是每个子进程可处理的请求数。每个子进程在处理了 “MaxRequestsPerChild”个请求后将自动销毁。0意味着无限,即子进程永不销毁。虽然缺省设为0可以使每个子进程处理更多的请求,但如 果设成非零值也有两点重要的好处:1、可防止意外的内存泄漏。2、在服务器负载下降的时侯会自动减少子进程数。

  ServerLimit 2000

  StartServers 10

  MinSpareServers 10

  MaxSpareServers 15

  MaxClients 1000

  MaxRequestsPerChild 2048

 

调试过程中用到的指令

# ps -ef|grep http|wc -l //查看请求总数

# cat /proc/loadavg //查看平均负载(loadavg),loadavg高于1,表明任务队列出现了等待,CPU忙不过来了。超过2以上就会明显感到性能降低了

# netstat -ant | grep :80 | wc -l //查看TCP连接数

# top //查看系统运行情况

====================================================================

apache的内存使用

apache进程在使用内存时,是“渐长”的。也就是说,直到这个进程死掉,使用内存的数量是一直增长而不会减少的。这样的话,apache进程使用内存的多少,就决定于你的应用程序最大使用内存量了。

keepalive参数

KeepAliveTimeout 这个参数决定了,在什么都不做之前,一个http进程能够等待多长时间?设想一下,如果keepalive设置为on,而 keepalivetimeout设置为一个比较大的数字,apache占用内存会很快的增长。这是因为,一个apache进程完成了一个任务(并达到了 一定的内存占用,想一下“渐进”模式),并不会马上退出,而是等待一个keepalivetimeout时间。假设用户的链接请求持续不断的到来,则积累 起来的无用的apache进程就会相当多,直到timeout,这些进程才会被杀死。

但是,keepalive的确对于静态的文件,比如图像文件的传送是很有效的,因此,keepalive要设置为on,(off)但是keepalvietimeout要设置的小些,比如5s 15

MaxRequestsPerChild

这个参数是说,apache进程在处理了多少个请求之后,必须退出,重新开始,以免在处理中的内存问题

对于php脚本来说,把这个参数设置的小一些是有好处的,可以避免程序使用的内存持续增长对apache带来的压力:让这个参数定期释放内存,因为php是在脚本执行完毕后,自动释放只用的资源(内存)的。

比如设置为50?如果太小的话,重新产生一个apache进程也是要消耗资源的,这是一个平衡问题。

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/19214.html

    标签: Apache
    分享给朋友:

    “Apache” 的相关文章

    BBR加速开启:提升网络性能的最佳实践

    什么是BBR? 在网络领域,BBR(Bottleneck Bandwidth and Round-trip propagation time)是一个备受关注的TCP拥塞控制算法,由Google开发的这一技术,旨在提升网络连接的传输速率和稳定性。BBR独特之处在于,它通过实时监测数据包的传输时延与丢包...

    深入探讨4C与1C:市场营销与电池性能优化的关键

    4C与1C概述 在探讨市场和技术发展的过程中,4C与1C是两个值得注意的概念。虽然它们的名称很相似,但是一个关注的是市场营销的策略,另一个则关乎电池的充放电性能。我常常思考这两个概念的融合点,以及它们对我们生活的深远影响。 1.1 4C理论介绍 4C理论是市场营销中一个重要的框架,帮助企业更好地理解...

    如何利用VPS优惠码省钱并提升服务体验

    在互联网上,虚拟专用服务器(VPS)已经成为许多个人和企业的首选方案之一。VPS允许用户拥有一个独立的、完全可控的服务器环境,同时又节省了许多硬件投资成本。对于那些刚开始接触VPS的朋友来说,了解VPS的定义及其用途是非常重要的。在这里,VPS不仅仅是一个存储空间,它能为你的业务提供强大的运算能力和...

    Zolerani云服务器评测与市场分析:高性价比的选择

    Zolerani是一个充满活力的云服务器品牌,属于葡萄牙的HLISTAN ZOLERANI, UNIPESSOAL LDA公司旗下。最近,我对这个品牌进行了深入的研究,发现它在全球VPS云服务器市场上取得了显著的发展。Digitalcloud是Zolerani的主打品牌,于2023年2月正式成立,专...

    搬瓦工VPS:初学者的最佳选择与使用指南

    大家对VPS可能不太熟悉,搬瓦工VPS在整个市场中已经站稳了脚跟。作为加拿大IT7公司旗下的一款主机服务,搬瓦工以其性价比高的OpenVZ VPS起步,而现在主要以KVM架构为主流,逐渐发展成为国内用户的热门选择。这种转型让我觉得很有意思,因为它不仅仅是一种产品的升级,更是一种服务的提升。 搬瓦工提...

    联通169回程路由怎么样?优缺点及用户评价分析

    在当下的网络环境中,联通169回程路由成为了一个备受关注的话题。很多人对它的表现充满好奇,联通169回程路由究竟如何呢?从基本信息到工作原理,再到它的主要特点,我们一起深入了解一下。 联通169回程路由的基本信息 联通169回程路由主要分为几种类型。我们通常提到的普通网络(AS4837 + AS48...