- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
在集群环境中使用Apache做调度,发现Apache的最大链接数不够用,研究如何进行行改,网上找到的资料大多是Linux环境中的,而我做的windows环境下的,基本上网上写的全不对,经过研究解决,记录下来。
方法1:
在httpd.conf文件中增加如下内容:
IfModulempm_winnt.cThreadsPerChild 1500
MaxRequestsPerChild 5000
/IfModule方法2:
取消httpd.conf文件中“#Includeconf/extra/httpd-mpm.conf”行的注释,为了能够启动httpd.conf文件时引用httpd-mpm.conf文件的配置。
然后修改httpd-mpm.conf 文件中以下部分的值产生作用,开始推荐1500、5000。
IfModulempm_winnt_moduleThreadsPerChild 150
MaxRequestsPerChild 0
/IfModule
其实大家能发现,两个方法是一样的道理,都是在其中修改了mpm_winnt的两个属性,下面说一下为什么这么改,只想看效果的可以到这里截止。
在网上查到的资料当中都会提到Apache 的两种工作模式,分别是Perfork和Worker,然后说到在Linux下如果想切换工作方式需要重新编译Apache,在编译命令上写上工作模式参数就会把定义了编译好后的Apache 就会按照编译的工作模式工作。但是在windows上不可能重新编译,找了很多资料之后才明白,原来Apache 的工作模式不是两个,而是很多,分别针对不同的系统,只不过在Linux上常用的是这两种模式,另外还有一种perchild工作模式应该也是在Linux下可以使用的。
使用命令“httpd-l”能够查看当前Apache 所使用的工作模式,别忘了在Apache 的bin目录下才能执行。
各种系统的对应模式如下:BeOS -beos
Netware -mpm_netwareOS/2 -mpmt_os2
Unix -preforkWindows -mpm_winnt
说明在windows 下只有mpm_winnt 一种工作模式,只需要修改mpm_winnt 的对应参数即可。
附上各种模式的调试参数说明beos
IfModulebeos.c
StartThreads10 #服务器启动时启动的线程数
MaxClients50 #可以启动的最大线程数(一个线程等于一个用户)
MaxRequestsPerThread10000 #每个线程允许的最大请求数
/IfModulempm_netware
IfModulempm_netware.c
ThreadStackSize65536 #为每个工作线程分配的堆栈尺寸StartThreads250 #服务器启动时启动的线程数MinSpareThreads25 #用于处理实发请求的空闲线程数MaxSpareThreads250 #空闲线程的最大数量MaxThreads1000 #在同一时间活动的最大线程数
MaxRequestPerChild0 #一个线程服务请求的最大数量,推荐将其设置为0,以实现无限制的接入
/IfModulempmt_os2
IfModulempmt_os2.c
StartServers2#启动的服务进程数量MinSpareThreads5 #每个进程允许的最小空闲线程MaxSpareThreads10 #每个进程允许的最大空闲线程
MaxRequestsPerChild0 #每个服务进程允许的最大连接数
/IfModuleprefork
IfModuleprefork.c
StartServers5#启动时服务器启动的进程数
MinSpareServers5 #保有的备用进程的最小数目MaxSpareServers10 #保有的备用进程的最大数目MaxClients150 #服务器允许启动的最大进程数MaxRequestPerChild0 #一个服务进程允许的最大请求数
/IfModuleworker
IfModuleworker.c
StartServers2#服务器启动时的服务进程数目MaxClients150 #允许同时连接的最大用户数目MinSpareThreads25 #保有的最小工作线程数目MaxSpareThreads75 #允许保有的最大工作线程数目ThreadsPerChild25 #每个服务进程中的工作线程常数
文档评论(0)