使用WDCP的小内存VPS内存占用优化的一点经验
[i=s] 本帖最后由 dmcountry 于 2014-6-3 12:14 编辑 [/i]使用wdcp好久了,刚开始的VPS是512MB内存,安装wdcp后并开通网站后发现内存占用会逐步升高,最后直至耗尽。设置mysql优化的参数为“小内存VPS(256-512mb)”后并没有出现改观。中间又换了其他几个免费控制面板,也不太好用。不过,经过一段时间折腾后,终于找到了解决方法。这个解决方法在安装wdcp面板的VPS上通过,方法分享出来,供参考:
[color=#333333][font=Tahoma,][font=微软雅黑]调试方法:修改apache配置文件httpd.conf(不同的主机控制面板可能该配置文件所处的目录不同)[/font][/font][/color]
[font=微软雅黑][color=#333333]
[/color][/font][font=微软雅黑][color=#333333]对于安装wdcp的VPS,修改的文件是/www/wdlinux/httpd-2.2.22/conf/httpd-wdl.conf[/color][/font]
[font=微软雅黑][color=#333333]
[/color][/font][color=#333333][font=Tahoma,][font=微软雅黑]在[/font][/font][/color][color=#333333][font=微软雅黑]httpd-wdl.conf[/font][/color][font=Tahoma,][font=微软雅黑][color=#333333]中找到<IfModule [/color][color=#ff0000]mpm_prefork_module[/color][color=#333333]>,这里就是apache在prefork模式下的参数段。将该段各值修改为以下数值:[/color][/font][/font]
[color=#333333][font=Tahoma,][font=微软雅黑]<IfModule mpm_prefork_module>[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] ServerLimit 256[/font][/font][/color]
[font=Tahoma,][font=微软雅黑][color=#333333] [/color][color=#ff0000]StartServers 2[/color][/font][/font]
[color=#333333][font=Tahoma,][font=微软雅黑] MinSpareServers 2[/font][/font][/color]
[font=Tahoma,][font=微软雅黑][color=#333333] [/color][color=#ff0000]MaxSpareServers 5[/color][/font][/font]
[color=#333333][font=Tahoma,][font=微软雅黑] MaxClients 256[/font][/font][/color]
[font=Tahoma,][font=微软雅黑][color=#333333] [/color][color=#ff0000]MaxRequestsPerChild 50[/color][/font][/font]
[color=#333333][font=Tahoma,][font=微软雅黑]</IfModule>[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑]最重要的占用内存的参数是标红的几个。[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑]经过上述设置之后,httpd子进程数保持在最小2个,多余的进程在处理请求超过50个后自动销毁释放内存(这个数值不要设为0,否则http进程会一直不销毁),从而保证在正常流量下内存得以及时释放。这些数值可以根据需要适当调整,以适应内存大小。修改后重启apache服务生效。[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑]各字段含义:[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] ServerLimit 最大客户数[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] StartServers 服务器启动时建立的子进程数量[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] MinSpareServers 最小空闲子进程数[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] MaxSpareServers 最大空闲子进程数[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] MaxClients 同一时间客户端最大接入请求的数量[/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑] MaxRequestsPerChild [/font][/font][/color][color=#333333][font=Tahoma,][font=微软雅黑]每个子进程在其生存期内允许伺服的最大请求数量[/font][/font][/color][color=#333333][font=Tahoma,][font=微软雅黑] [/font][/font][/color]
[color=#333333][font=Tahoma,][font=微软雅黑]经验原文写在了本人网贴里:[/font][/font][/color][url=http://hostbus.net/forum.php?mod=viewthread&tid=158786]小内存VPS httpd参数优化[/url] 哇,有好东西,松果耶,赶紧收藏一下,嘿嘿:D 做个标记
<IfModule mpm_prefork_module>
ServerLimit 512
StartServers 5
MinSpareServers 3
MaxSpareServers 10
MaxClients 384
MaxRequestsPerChild 10
</IfModule> 做个标记
<IfModule mpm_prefork_module>
ServerLimit 1024
StartServers 5
MinSpareServers 3
MaxSpareServers 30
MaxClients 1024
MaxRequestsPerChild 0
</IfModule> <IfModule mpm_prefork_module>
ServerLimit 1024
StartServers 5
MinSpareServers 3
MaxSpareServers 30
MaxClients 1024
MaxRequestsPerChild 500
</IfModule> # apache conf conf/httpd-wdl.conf
# Created by [url]http://www.wdlinux.cn[/url]
# Last Updated 2010.06.01
Timeout 30
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 5
UseCanonicalName Off
ServerTokens Prod
ServerSignature Off
HostnameLookups Off
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php index.htm
<IfModule mpm_worker_module>
ServerLimit 32
ThreadLimit 256
StartServers 12
MaxClients 2048
MinSpareThreads 50
MaxSpareThreads 256
ThreadsPerChild 256
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_prefork_module>
ServerLimit 1024
StartServers 5
MinSpareServers 3
MaxSpareServers 30
MaxClients 1024
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_itk_module>
ServerLimit 1024
StartServers 5
MinSpareServers 3
MaxSpareServers 30
MaxClients 1024
MaxRequestsPerChild 0
</IfModule> :) mark一下 做个标记
<IfModule mpm_prefork_module>
ServerLimit 1024
StartServers 5
MinSpareServers 3
MaxSpareServers 30
MaxClients 1024
MaxRequestsPerChild [color=Red]100[/color]
</IfModule>
页:
[1]