1 内存
适当选用适合大小的内存,保证谷峰负载时,有足够的内存使用
2 使用ab测试apache性能
- ab -n 1000 -c 10 http://www.test.com
使用ab的缺点:不能更真实的模仿用户的操做。
3 调节保持链接的设定
- KeepAlive On #在单一链接时进行多个请求
- MaxKeepAliveRequests 200 #单一链接时间能够容许多少个保持链接的请求
- KeepAliveTimeout 15 #在没有接受其余请求时,会持续开启特定链接的时间
调整合适的各项值
4 取得网站活动快照
启用server-status处理器来取得子进程在运行的快照
- <Location /server-status>
- SetHandler server-status
- </Location>
- ExtendedStatus On
5 避免DNS查询
以DNS来查询客户端地址
6 最佳化符号连接
主要考虑安全防御:永远不要容许遵循符号连接
主要考虑性能:永远使用Options FollowSysLinks且毫不使用Options SysLinkIfOwnerMatch
7 尽可能下降.htaccess文件对性能的影响
只在必要的目录中启用AllowOverride,并告知Apache不要浪费时间在其余的位置上查找.htaccess文件
而后以<Directory>区块启用必要的.htaccess文件
8 最佳化进程的产生
MinSpareServers MaxSpareServers 控制服务器池的大小,以便有子进程等待服务引入的请求
(永远不要发生,当请求送至网站却没有闲置的服务器进程在等待处理请求的情形)
9 调节线程的产生
- <IfModule mpm_winnt.c>
- ThreadsPerChild 1000
- MaxRequestsPerChild 8000
- Win32DisableAcceptEx
- </IfModule>
10 将常常查看的文件存入高速缓存区
[使用MMapFile]----将文件内容存入内存的高速缓冲区
- MMapFile /www/xxx/index.html
- MMapFile /www/xxx/otherpage.html
[使用CacheFile]----将文件句柄存入内存的高速缓冲区,稍微下降系统性能,可是占用内存较少
- CacheFile /www/xxx/index.html
- CacheFile /www/xxx/otherpage.html
参考资料:《apache cookbook
》