Apache HTTP Server 修改最大连接数maxclients

在公司内网用到了apache2做web服务器,每当内部发文的时候,尤其是一些人事任免及销售目标下发、达成情况总会出现达到最大连接数的情况,导致阻塞。

一般apache采用prefork和worker机制,通过apachectl -l命令查看默认使用的prefork机制。需要修改prefork策略

那么需要做如下修改:

1,/usr/local/apache2/conf/http.conf 引入(include)prefork配置文件/usr/local/apache2/conf/extra/httpd-mpm.conf,
2,修改httpd-mpm.conf配置文件的prefork配置部分

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
ServerLimit 1000 ##必须放在MaxClients上面 且值>=MaxCliens
MaxClients 1000
MaxRequestsPerChild 10000
</IfModule>
注意:
1,默认情况下prefork配置部分没有ServerLimit配置,其在/usr/loca/apache2/bin/httpd(16进制)中编译,一般会报错如下
MaxClients of 1000 exceeds ServerLimit value of 256 servers,
lowering MaxClients to 256. To increase, please see the ServerLimit directive.
2,修改conf文件后,需要重新启动

3,
prefork采用预派生子进程方式,用单独的子进程来处理 不同的请求,进程之间彼此独立。
相对于prefork,worker全新的支持多线程和多进程混合模型的MPM。由于 使用线程来处理,所以可以处理相对海量的请求,而系统资源的开销要小于基于进程的服务器。但是,worker也使用了多进程,每个进程又生成多个线程,以 获得基于进程服务器的稳定性。(第三点摘自:http://www.itlearner.com/article/4443)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值