首页 > 系统运维 > apache使用mod_limitipconn.c来限制apache的并发数
您的足迹
  • 你没有浏览过任何文章或者你没有开启cookies。

apache使用mod_limitipconn.c来限制apache的并发数

1.今天和同事并发测试,apache的prefork设置最大连接是2000,一会就被耗尽了,页面打不开了。prefox配置如下:
#cat /usr/local/httpd/conf/extra/httpd-mpm.conf
<IfModule mpm_prefork_module>
ServerLimit 2000
StartServers 200
MinSpareServers 35
MaxSpareServers 40
MaxClients 2000
MaxRequestsPerChild 10000
</IfModule>
扫描不到1分钟服务器就挂了,后来又配置了mod_limitipconn.c模块来限制单个IP连接数,安装配置如下:
#wget http://dominia.org/djao/limit/mod_limitipconn-0.23.tar.bz2
#/usr/local/httpd/bin/apxs -c -i -a mod_limitipconn.c
修改http.conf,添加模块和增加限制链接数
#在模块处添加
LoadModule limitipconn_module modules/mod_limitipconn.so
#在结尾处添加,这里添加是全局限制 ,也可以发vhost里面添加哈。
ExtendedStatus On
<IfModule mod_limitipconn.c>
    <Location />
    MaxConnPerIP 30

    </Location>
</IfModule>
安装完毕后,效果显著,服务器未出现挂死的问题。
2.换一种思路,用iptables实现
iptables -A INPUT -m conntrack -j DROP  --ctstate INVALID
iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 50 -j DROP
iptables -A INPUT -p tcp -m tcp -m connlimit --dport 80 --tcp-flags SYN,ACK,FIN,RST SYN -j DROP  --connlimit-above 32 --connlimit-mask 32
  1. 还没有评论
评论提交中, 请稍候...

留言

可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks
Feed