Apache 性能调优-参考篇

3140阅读 0评论2013-05-27 exhalo
分类:系统运维

1 内存
    适当选用适合大小的内存,保证谷峰负载时,有足够的内存使用

2 使用ab测试apache性能
    
  1. ab -n 1000 -c 10 http://www.test.com
    使用ab的缺点:不能更真实的模仿用户的操作。

3 调节保持连接的设定

  1. KeepAlive On #在单一连接时进行多个请求
  2.     MaxKeepAliveRequests 200 #单一连接时间可以允许多少个保持连接的请求
  3.     KeepAliveTimeout 15 #在没有接受其他请求时,会持续开启特定连接的时间
    调整合适的各项值

4 取得网站活动快照
    启用server-status处理器来取得子进程在运行的快照
   
  1. <Location /server-status>
  2.         SetHandler server-status
  3. </Location>
  4.     ExtendedStatus On

5 避免DNS查询
    以DNS来查询客户端地址
    
  1. HostNameLookups Off

6 最佳化符号链接
   
    主要考虑安全防护:永远不要允许遵循符号链接
    主要考虑性能:永远使用Options FollowSysLinks且绝不使用Options SysLinkIfOwnerMatch
7 尽量降低.htaccess文件对性能的影响
    只在必要的目录中启用AllowOverride,并告知Apache不要浪费时间在其他的位置上查找.htaccess文件
    
  1. AllowOverride None
    然后以区块启用必要的.htaccess文件

8 最佳化进程的产生
    MinSpareServers MaxSpareServers 控制服务器池的大小,以便有子进程等待服务引入的请求
    (永远不要发生,当请求送至网站却没有闲置的服务器进程在等待处理请求的情形)

9 调节线程的产生
    
  1. <IfModule mpm_winnt.c>
  2.         ThreadsPerChild 1000
  3.         MaxRequestsPerChild 8000
  4.         Win32DisableAcceptEx
  5. </IfModule>

10 将经常查看的文件存入高速缓存区
    [使用MMapFile]----将文件内容存入内存的高速缓冲区
    
  1. MMapFile /www/xxx/index.html
  2. MMapFile /www/xxx/otherpage.html
    [使用CacheFile]----将文件句柄存入内存的高速缓冲区,稍微降低系统性能,但是占用内存较少

  1. CacheFile /www/xxx/index.html
  2. CacheFile /www/xxx/otherpage.html

参考资料:《apache cookbook
上一篇:JBOSS AS 性能调整优化
下一篇:Apache虚拟主机-解惑篇