liux系统的wdcp面板下如何优化网站服务器内存

2024-11-19 10:25:03 812阅读

这几天一直忙于网站问题了,文章一直写的不错,折腾了几天,今天才算真正解决了。昨天就写过一篇关于wordpress网站提示建立数据库连接时出错的文章,今天这篇文章主要写其中的liux系统的wdcp面板下如何优化网站服务器内存。追梦笔记发现自己的网站出现数据库连接错误主要是因为服务器内存不足造成的,每次服务器内存被占满网站就打不开了。 

其实本打算昨天给服务器升级内存的,但自己看了一下价格从1G内存升级到2G内存竟然需要付近四百元,还不如再买个虚拟主机划算呢。另外,我发现每次清空系统内存都会降到300多M,它自己再慢慢的提升到1G的。刚开始的时候不到一天的时间,经过上次简单的修复表单优化,近两天时间才出现了问题。有没有什么方法不让系统内存增加呢?自己从网上找了半天才找到最终的解决方法,现在系统实际使用内存没有再超过500M了。

liux系统的wdcp面板下如何优化网站服务器内存

1.执行wdcp控制面板下的计划任务。设置每天自动释放内存。

liux系统的wdcp面板下如何优化网站服务器内存

liux系统的wdcp面板下如何优化网站服务器内存

2.通过wdcp后台的文件管理功能,找到/www/wdlinux/httpd-2.2.22/conf/httpd-wdl.conf文件,修改里面的<IfModule mpm_prefork_module>参数。网络上朋友基本上都进行了数值修改,但我自己只是修改了最下面的两处,感觉效果还可以。大家可以根据自己服务器的内存大小进行相应的修改,我的服务器是1核1G的。

liux系统的wdcp面板下如何优化网站服务器内存

liux系统的wdcp面板下如何优化网站服务器内存

其实具体是什么意思,追梦笔记也没有搞得很明白。看了很多文章说法也不太一样,不过大家也可以作为参考

ServerLimit 最大客户数 StartServers 服务器启动时建立的子进程数量 MinSpareServers 最小空闲子进程数 MaxSpareServers 最大空闲子进程数 MaxClients 同一时间客户端最大接入请求的数量 MaxRequestsPerChild 每个子进程在其生存期内允许伺服的最大请求数量

网友的说法是经过上述设置之后,httpd子进程数保持在最小2个,多余的进程在处理请求超过50个后自动销毁释放内存(这个数值不要设为0,否则http进程会一直不销毁),从而保证在正常流量下内存得以及时释放。这些数值可以根据需要适当调整,以适应内存大小。修改后重启apache服务生效。 网络上还有一个朋友们的说法,个人觉得还是非常好的,这里整理过来也供自己学习和参考。

1,StartServers 服务器启动时建立的HTTPD进程数量,这个应该属于父进程 
2,MinSpareServers 最小HTTPD空闲进程数量,这个虽然是空闲的父进程,但是它是有作用的,它的存在能够减少请求突然到来时,HTTPD进程数量不够,产生新的HTTPD进程的时间。 
 3,MaxSpareServers 最大HTTPD空闲进程数量,这个用来控制,如果空闲HTTPD进程太多,会占用掉大量内存空间。 
4,MaxClients 这个参量最难理解,我个人理解是,每个访客访问网站时,网站的HTTPD进程用来处理和访客的交互操作,而每个HTTPD的大小每个网站应该是有所区别的。这个MaxClients就代表了网站的HTTPD父进程的最大数量。比如每个HTTPD占用20M内存空间,你VPS的剩余内存空间是200M(剩余空间是指总的内存减去系统以及其它服务已经占用的内存),那么你的MaxClients应该只有200M/20M=10个。此时你最多只能设置为10,如果超过,那么VPS会调用硬盘空间作为内存不足的
补充部分,但硬盘空间的访问速度实际上是很慢的,这样网站访问起来,就会有部分用户感觉很慢。如果你这个数值设置的很小,也会有问题,比如本来要10个HTTPD才能满足需求,但你设置为了8,那么如果有10人访问,就会有后面的2人访问会比较慢,等到前面的8人链接断开,这2人的访问才会快。(这里理解不清楚,不明白访客访问与HTTPD父进程和子进程之间的关系) 
5,MaxRequestsPerChild 每个子进程在其生存期内允许伺服的最大请求数量,默认为0,则子进程不会自动销毁,这样子进程就可能占用内存越来越多,如果设置为1000,那么子进程在处理了1000个请求的时候会 被父进程自动销毁,从而产生新的子进程,这样内存消耗就降低了。(跟上面一样,不明白访客访问与HTTPD父进程和子进程之间的关系),但这里我也不明白怎么看子进程,还有子进程处理请求到底是处理的什么?

虽然我个人还是看不懂具体什么意思,但是通过这个网友的举例可以理解具体的用途。如果你设置了最小空闲HTTPD进程比较多,比方说是30,即使网站上没有人访问,最少也要30个空闲HTTPD进程在等待状态。如果你网站没什么流量,设置这么多的空闲HTTPD进程就完全是浪费,这些进程也加大了网站的内存。 

另外,如果像上面网友图片上设置的,把最小空闲httpd进程设置成2个,把最大httpd进程设置成5个。虽然能大大减小后台的内存占用,不过如果短时间内流量暴涨,新的HTTPD进程只能3个3个的产生,这样可能会降低访问速度。具体怎么样,还需要大家自己去测试,也可以查看蜘蛛的抓取记录平均耗时来了解端倪。 

从上面来看liux系统的wdcp面板下优化网站服务器内存也是非常简单的,新手站长们也可以自己去操作一下。其实现在很多网站服务器问题都可以自己去解决的,自己遇到过的问题,别人也可能遇到过。建议新手站长们多去网络上搜索查找,只有自己真正了解过的问题,后期再遇到时才能更快的解决掉,这里也感谢上面两位网友对问题的优秀解答。

推荐阅读:如何更好的选择网站虚拟主机?       网站被黑了怎么办?如何检测与处理被黑的网站?


文章版权声明:除非注明,否则均为赵连奎博客原创文章,转载或复制请以超链接形式并注明出处。