风の社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 4418|回复: 0
打印 上一主题 下一主题

VPS中的Apache参数性能调优建议

[复制链接]

449

主题

0

听众

1995

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    开心
    2012-9-12 10:03
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    楼主
    发表于 2013-7-13 18:15:51 |只看该作者 |倒序浏览
    请注意:实际环境变化多端,参数既可以保守的设置也可以积极的设置,本文只是针对大多数情况的个人理解。请务必根据实际情况进行调整。

    首先确定Maxclients参数的值

    如果你的总内存为128M,那么该参数的值设置为3-8。一般来说,拥有128M内存的VPS性能、负载往往不会很高,大多数只是应付零星陆续的访问请求。128M本身就已经非常小了,加上系统占用的内存,可供Apache使用的内存并不多。

    如果你的总内存为256M,那么该参数的值可以设为5-10。

    如果总内存为512M,则该参数设置为20以内即可。

    如果你的站点是对访客全静态的,建议采用Nginx作为前端的架构,将MaxClients调整的略大,这样可以提供更多的并发访问;但如果站点运行着Wordpress这种占内存、耗资源的庞大系统,则建议将此值调整的稍小,以防止超出物理内存而调用swap;

    在调整完此参数后,需要使用ab进行负载压力测试,然后将此值调整至负载最大时内存刚好用完但却不使用swap为佳。

    然后根据MaxClients的值确定StartServers

    StartServers相对来说并非如此重要,如果网站大多数时候压力很小,则将此值设置为MaxClients的1/3到1/2即可。这个值决定了在Apache启动时创建的进程数量,但往往在正常运行时,进程数量并非这个数。

    然后调整MinSpareServers

    MinSpareServers决定了最少空闲的进程数量。即:即使Apache没有任何请求需要处理,也会有MinSpareServers个进程待命。这样做的目的是为了准备可能到来的访问高峰。如果你的网站访问量总的情况比较平稳,则此值可以小一点;若网站负载不定,一会大一会小,则此值可设置偏大一点;

    调整MaxSpareServers

    MaxSpareServers决定了最大的空闲进程数量。此设计是为了在处理完访问后更快的释放内存资源。如果此值设置过大,则服务器在访问高峰期过后,Apache仍然有很多子进程占用内存;如果此值设置过小,则当高负载结束后,Apache会迅速的杀死多余进程以释放资源。

    调整MaxRequestsPerChild

    MaxRequestsPerChild的设置作用是为了让进程在处理一定数量的请求之后退出,以减少内存占用。同时,它还对潜在的内存泄露有一定防范作用。一般来说,如果服务器配置较低,可以设得小一点;服务器配置较好,可以设置大一点。

    对于VPS来说,从200到5000都是可接受的范围。

    总结

    参数调优并非纸上谈兵,而是根据最复杂的情况,综合多种约束条件,逐步调整的。希望初学者能根据自己服务器的硬件配置进行尝试,既锻炼了实际操作能力,还能对Apache的性能参数有更深刻的了解。
    分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    转播转播0 分享分享0 收藏收藏0 支持支持0 反对反对0
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    Archiver|手机版|迦南的天空 ( 沪ICP备12037486号-1

    GMT+8, 2024-5-17 04:08 , Processed in 0.015414 second(s), 9 queries , Gzip On, Redis On.

    Powered by Discuz! X2.5

    © 2001-2012 Comsenz Inc.

    回顶部