1.1 ServerType:
syntax: ServerType inetd | standalone
default: ServerTyoe standalone
1.2 StartServers
syntax: StartServers number
default: StartServers 5
设置Apache启动时建立的Apache服务器初始子进程的数目.
1.3 ThreadsPerChild(windows only)
syntax: ThreadsPerChild number
default: ThreadsPerChild 5
1.4 SendBufferSize
syntax: SendBufferSize bytes
default: by OS
TCP 发送缓冲区容量, 可以设置得比OS高,已提供服务器的网络性能.
1.5 ListenBacklog
syntax: ListenBacklog backlog
default: ListenBacklog 511
设置挂起的连接队列的最大长度,如果检测到DDOS,可以适当增加这个值
1.6 TimeOut
syntax: TimeOut number
default: TimeOut 300
设置与客户端的超时长度
1.7 MaxClient
syntax: MaxClient number
default: MaxClient 256
设置Apache同时服务的请求数目,也是子进程数目(src/httpd.h)
1.8 MaxRequestsPerChild
syntax: MaxRequestsPerChild number
default: MaxRequestPerChild 0
设置一个子进程可以处理的请求数目,当完成此数目后,子进程应该结束,0为无限制;如果怀疑有内存泄
漏,可设置一个非0值
1.9 MaxSpareServers
syntax: MaxSpareServers number
default: MaxSpareServers 10
设置允许空闲的最大进程数,如果空闲进程数大于指定的值,则Kill之
1.10 MinSpareServers
syntax: MinSpareServers number
default: MinSpareServers 5
设置允许空闲的最小进程数,如果空闲进程数小于指定的值,则建立之
1.11 KeepAlive
syntax: KeepAlive On | Off
default: KeepAlive On
设置打开(关闭) TCP 持续连接
1.12 KeepAliveTimeout
syntax: KeepAliveTimeout senconds
default: KeepAliveTimeout 15
如果设置了KeepAlive,此处设置关闭连接前的超时时长
1.13 MaxKeepAliveRequests
syntax: MaxKeepAliveRequests number
default: MaxKeepAliveRequests 100
限制KeepAlive打开时,每个连接服务的请求数,0 为无限制
1.14 RLimitCPU
syntax: RLimitCPU n | 'max' [n | 'max']
default:
设置Apache的CPU占用时间,缺省为OS指定, 第一个参数为所有进程的软限制
第二个参数为最大资源限制
1.15 RLimitMEM
syntax: RLimitMEM n | 'max' [n | 'max']
default:
设置Apache的MEM占用,缺省为OS指定, 第一个参数为所有进程的软限制
第二个参数为最大资源限制
1.16 RLimitNPROC
syntax: RLimitNPROC n | 'max' [n | 'max']
default:
设置每个用户并发进程的最大数目,缺省为OS指定, 第一个参数为所有进程的软限制
第二个参数为OS允许的最大限制
在Apache1.3以前,
,
,
的设置对性能都有很大的影响。尤其是为了应对负载而建立足够的子进程时,Apache需要有一个"渐进"的过程。在最初建立
数量的子进程后,为了满足
设置的需要,每一秒钟只能建立一个子进程。所以,对一个需要同时处理100个客户端的服务器,如果
使用默认的设置5
,则为了应对负载而建立足够多的子进程需要95秒。在实际应用中,如果不频繁重新启动服务器,这样还可以,但是如果仅仅为了提供10分钟的服务,这样就很糟糕了。
"一秒钟一个"的规定是为了避免在创建子进程过程中服务器对请求的响应停顿,但是它对服务器性能的影响太大了,必须予以改变。在Apache1.3中,这个"一秒钟一个"的规定变得宽松了,创建一个进程,等待一秒钟,继续创建第二个,再等待一秒钟,继而创建四个,如此按指数级增加创建的进程数,最多达到每秒32个,直到满足
设置的值为止。
从多数反映看来,似乎没有必要调整
,
,
。如果每秒钟创建的进程数超过4个,则会在
中产生一条消息,如果产生大量此消息,则可以考虑修改这些设置。可以使用mod_status
的输出作为参考。
与进程创建相关的是由
引发的进程的销毁。其默认值是"0
",意味着每个进程所处理的请求数是不受限制的。如果此值设置得很小,比如30,则可能需要大幅增加。在SunOS或者Solaris的早期版本上,其最大值为10000
以免内存泄漏。
如果启用了持久链接,子进程将保持忙碌状态以等待被打开连接上的新请求。为了最小化其负面影响,
的默认值被设置为5
秒,以谋求网络带宽和服务器资源之间的平衡。在任何情况下此值都不应当大于60
秒,参见
阅读(1989) | 评论(0) | 转发(0) |