You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Chirouze Olivier <ol...@volvo.com> on 2007/02/09 17:08:08 UTC

[users@httpd] Trying to limit connections per virtual host with mod_cband

Hi,

I'm trying to use mod_cband... but can't manage to!

I've tailed down my conf file to the most simple case with just one
virtual host.
What I'm trying to achieve is quite simple: I just want to limit the
number of concurrent connections per virtual host (a "MaxClient" at the
virtualhost level) and I think this is one of the many features of
cband.

How do I test this? Just call multiple times a page that takes very long
to anwser: during all this time, for each click, a connection on this
virtual host stays open on Apache. (thanks a lot to Georgi
Chorbadzhiyski for pointing me to /status?notable that proves the
connections are open on the right virtual host).

The thing is, on cband-status, I see some rps used, but never a single
connection! (thanks to cband status page: /cband-status). "Current
connection" always stays at 0. And, in fact, the limit is never used. I
set it to 2 and can have more than 10 concurrent connections. So, in a
word, it doesn't work as expected.

However, I see some "remote client", but always one. The virtual host is
correct, but "Connections Limit/Current" always says "1/0". I don't
understand how a line can be here with zero connection?

I'm kind of lost after looking around for days and trying all I can
think of (simplifying the config file, unactivating modules, changing
order of LoadModule, using OpenSta, etc...)

I'm using mod_rewrite and mod_proxy and I think that might be the pb.
But there is an example with mod_rewrite on cband homepage so I suppose
there is no incompatibility!

Please... Help ;-)

Olivier

Olivier CHIROUZE
I&0 Infrastructure

The conf file:
------------------------------------------------------------------------
--------------------------------

ServerRoot /data/apache/httpd-test1

# This only contains standard httpd.conf file with the following modules
activated:
#LoadModule access_module modules/mod_access.so
#LoadModule log_config_module modules/mod_log_config.so
#LoadModule logio_module modules/mod_logio.so
#LoadModule env_module modules/mod_env.so
#LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule mime_module modules/mod_mime.so
#LoadModule status_module modules/mod_status.so
#LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule dir_module modules/mod_dir.so
#LoadModule alias_module modules/mod_alias.so
Include /data/apache/httpd-test1/appli-apache/conf/httpd_solaris28.conf

ServerName  reverse-proxy-test2.iteu.volvo.net

User apache
Group apache

DocumentRoot "/data/apache/httpd-test1/htdocs"

ServerAdmin apache@reverse-proxy-test2.iteu.volvo.net

LoadModule cband_module choucroutemodules/mod_cband.so

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_http_module modules/mod_proxy_http.so

CustomLog /logs/apache/httpd-test1/logs/rproxy_log "%{Host}i |%{RULE}e|
%{%H/%T}t %h -> %{SERVER}e URL: %U"

UseCanonicalName Off

<VirtualHost reverse-proxy-test2.iteu.volvo.net:80>
	<Location /status>
		SetHandler server-status
		Order deny,allow
		Allow from all
	</Location>
	<Location /info>
	    SetHandler server-info
	</Location>
</VirtualHost>

LoadModule rewrite_module     modules/mod_rewrite.so

RewriteEngine on
RewriteLog	/logs/apache/httpd-test1/logs/rewrite_log
RewriteLogLevel 0

LogLevel debug

Listen		reverse-proxy-test2.iteu.volvo.net:80
NameVirtualHost reverse-proxy-test2.iteu.volvo.net:80

<IfModule mod_cband.c>
	<Location /cband-status>
		SetHandler cband-status
		Order deny,allow
		Allow from all
	</Location>
	<Location /cband-status-me>
		SetHandler cband-status-me
		Order deny,allow
		Allow from all
	</Location>
</IfModule>

<IfModule mod_cband.c>
        CBandSpeed 0 0 10
	CBandScoreFlushPeriod 1
	CBandRandomPulse On
</IfModule>

<VirtualHost reverse-proxy-test2.iteu.volvo.net:80>
ServerName      youpi.volvo.net

<IfModule mod_cband.c>
        CBandRemoteSpeed 0 3 1
        CBandSpeed 0 0 2
        CBandDefaultExceededCode 503
        CBandScoreboard /tmp/apache/scoreboard
        CBandPeriod 2s
</IfModule>

RewriteEngine   on
RewriteLog      /logs/apache/httpd-test1/logs/rewrite_log
RewriteLogLevel 3
Include         conf/deny_patterns.conf

RewriteRule     ^/(.*)$ http://10.213.131.69/waitZoub.php?wait=$1 [P]

ProxyRequests   off

KeepAlive Off

</VirtualHost>

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org