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

    然后以<Directory>区块启用必要的.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