You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Hans Juergen von Lengerke <le...@sixt.de> on 2002/03/25 16:20:37 UTC

[OT] Replacing reverse squid with mod_proxy

We are currently using squid set up as a reverse proxy to accelerate
several heavy backends (mod_perl, etc) and to protect them from slow
client connections.

I am looking into replacing the squid with apache+mod_proxy. Why?
Because ultimately I'd like to be able to cluster the frontend using
mod_backhand + wackamole. The primary reason for clustering isn't for
load-balancing (yet) but for failover handling. So, ideally, one machine
should be enough to serve the whole server load.

Speaking of load, the squid (2.3.STABLE1) is currently doing up to 80
requests per second at a cache hit ratio of around 72%. This is on one
box, a Dual 500MHz Pentium III with 1GB RAM. Average object size is 6KB.
200/304 ratio is around 5/3.

Now, I've tried to replace the squid with apache+mod_proxy (1.3.11) and
the frontend very quickly came to a standstill. I set MaxClients to 256
but all slots filled up fast. I upped MaxClients to 512 (recompiled with
patched httpd.h) but the result was the same. All slots were occupied in
no time and the server ground to a halt.

Now I'm left with two choices: give up or try harder :-)

Before I decide for one of them I thought I'd ask on the lists (sorry
for the x-post) to see if the above numbers (80 Hits/Second) are in fact
feasible with apache/mod_proxy on one box. Are there any benchmarks
around? Does someone have a similar setup and how many requests can they
serve?  Should I up MaxClients any further? Will I get better results
using a newer version of apache? Or should I give up and stick with
squid?

TIA for your input.


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Joshua Slive <jo...@slive.ca>.
On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:
> I used the ancient version because that's the version that was running
> on this host for a long while (but so far only dealing with SSL
> connections). I can't try 1.3.24 yet because mod_ssl isn't available for
> it yet and the frontend apache needs to do SSL. (But our SSL Traffic is
> very low).
>
> I am aware of the recent mod_proxy improvements, I can't try 1.3.24 yet
> because mod_ssl isn't out for it yet. So you think 1.3.24 will do the
> load I described?

I think you'll find that, since there where no API changes in 1.3.24,
mod_ssl from 1.3.23 should work just fine.  (Unless Ralf has a specific
restriction against that.)

As far as whether it can handle the load, that depends too much on your
load characteristics to make any comment.  You'll just have to try it out.

Joshua.


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Hans Juergen von Lengerke <le...@sixt.de>.
Joshua Slive <jo...@slive.ca> on Mar 25, 2002:

> [Cross-posting to multiple mailing lists is dangerous (and a little
> annoying) because people responding will usually not be members of all the
> lists, and will therefore have to deal with bounces.]

OK, sorry about that.

> On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:
> >
> > Now, I've tried to replace the squid with apache+mod_proxy (1.3.11) and
>
> Why are you setting up a new service with an ancient version of apache?
> mod_proxy has improved immensly since then.  Use 1.3.24.

I used the ancient version because that's the version that was running
on this host for a long while (but so far only dealing with SSL
connections). I can't try 1.3.24 yet because mod_ssl isn't available for
it yet and the frontend apache needs to do SSL. (But our SSL Traffic is
very low).

I am aware of the recent mod_proxy improvements, I can't try 1.3.24 yet
because mod_ssl isn't out for it yet. So you think 1.3.24 will do the
load I described?


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Joshua Slive <jo...@slive.ca>.
[Cross-posting to multiple mailing lists is dangerous (and a little
annoying) because people responding will usually not be members of all the
lists, and will therefore have to deal with bounces.]

On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:
>
> Now, I've tried to replace the squid with apache+mod_proxy (1.3.11) and

Why are you setting up a new service with an ancient version of apache?
mod_proxy has improved immensly since then.  Use 1.3.24.

Joshua.


Re: [m_b_users] [OT] Replacing reverse squid with mod_proxy

Posted by Theo Schlossnagle <je...@omniti.com>.
On Monday, March 25, 2002, at 10:20 AM, Hans Juergen von Lengerke wrote:
> We are currently using squid set up as a reverse proxy to accelerate
> several heavy backends (mod_perl, etc) and to protect them from slow
> client connections.
>
> I am looking into replacing the squid with apache+mod_proxy. Why?
> Because ultimately I'd like to be able to cluster the frontend using
> mod_backhand + wackamole. The primary reason for clustering isn't for
> load-balancing (yet) but for failover handling. So, ideally, one machine
> should be enough to serve the whole server load.

wackamole and mod_backhand are completely independent.   If you are 
happy with Squid, just use wackamole and Squid.

If you are set on trying use Apache, try the lingerd patch and set the 
TCP send and receive buffers high.  If you are doing 80 hits/s and want 
to use mod_backhand, then you will most likely want to put 
BackhandConnectionPool off.

--
Theo Schlossnagle
Principal Consultant
OmniTI Computer Consulting, Inc. -- http://www.omniti.com/
Phone:  +1 301 776 6376       Fax:  +1 410 880 4879
1024D/82844984/95FD 30F1 489E 4613 F22E  491A 7E88 364C 8284 4984
2047R/33131B65/71 F7 95 64 49 76 5D BA  3D 90 B9 9F BE 27 24 E7


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Ged Haywood <ge...@www2.jubileegroup.co.uk>.
Hi there,

On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:

> I am looking into replacing the squid with apache+mod_proxy.

I don't know if it will do what you need, but you might want to have
a look at mod_accel.  If this URI is broken mail dapi<at>mail<dot>ru
for the information.

http://dapi.chaz.ru/articles/mod_accel.xml?lang=en

73,
Ged.



Re: [m_b_users] [OT] Replacing reverse squid with mod_proxy

Posted by Theo Schlossnagle <je...@omniti.com>.
On Monday, March 25, 2002, at 10:20 AM, Hans Juergen von Lengerke wrote:
> We are currently using squid set up as a reverse proxy to accelerate
> several heavy backends (mod_perl, etc) and to protect them from slow
> client connections.
>
> I am looking into replacing the squid with apache+mod_proxy. Why?
> Because ultimately I'd like to be able to cluster the frontend using
> mod_backhand + wackamole. The primary reason for clustering isn't for
> load-balancing (yet) but for failover handling. So, ideally, one machine
> should be enough to serve the whole server load.

wackamole and mod_backhand are completely independent.   If you are 
happy with Squid, just use wackamole and Squid.

If you are set on trying use Apache, try the lingerd patch and set the 
TCP send and receive buffers high.  If you are doing 80 hits/s and want 
to use mod_backhand, then you will most likely want to put 
BackhandConnectionPool off.

--
Theo Schlossnagle
Principal Consultant
OmniTI Computer Consulting, Inc. -- http://www.omniti.com/
Phone:  +1 301 776 6376       Fax:  +1 410 880 4879
1024D/82844984/95FD 30F1 489E 4613 F22E  491A 7E88 364C 8284 4984
2047R/33131B65/71 F7 95 64 49 76 5D BA  3D 90 B9 9F BE 27 24 E7


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Joshua Slive <jo...@slive.ca>.
[Cross-posting to multiple mailing lists is dangerous (and a little
annoying) because people responding will usually not be members of all the
lists, and will therefore have to deal with bounces.]

On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:
>
> Now, I've tried to replace the squid with apache+mod_proxy (1.3.11) and

Why are you setting up a new service with an ancient version of apache?
mod_proxy has improved immensly since then.  Use 1.3.24.

Joshua.


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: [OT] Replacing reverse squid with mod_proxy

Posted by Igor Sysoev <is...@rambler-co.ru>.
On Mon, 25 Mar 2002, Hans Juergen von Lengerke wrote:

> We are currently using squid set up as a reverse proxy to accelerate
> several heavy backends (mod_perl, etc) and to protect them from slow
> client connections.
> 
> I am looking into replacing the squid with apache+mod_proxy. Why?
> Because ultimately I'd like to be able to cluster the frontend using
> mod_backhand + wackamole. The primary reason for clustering isn't for
> load-balancing (yet) but for failover handling. So, ideally, one machine
> should be enough to serve the whole server load.
> 
> Speaking of load, the squid (2.3.STABLE1) is currently doing up to 80
> requests per second at a cache hit ratio of around 72%. This is on one
> box, a Dual 500MHz Pentium III with 1GB RAM. Average object size is 6KB.
> 200/304 ratio is around 5/3.
> 
> Now, I've tried to replace the squid with apache+mod_proxy (1.3.11) and
> the frontend very quickly came to a standstill. I set MaxClients to 256
> but all slots filled up fast. I upped MaxClients to 512 (recompiled with
> patched httpd.h) but the result was the same. All slots were occupied in
> no time and the server ground to a halt.
> 
> Now I'm left with two choices: give up or try harder :-)
> 
> Before I decide for one of them I thought I'd ask on the lists (sorry
> for the x-post) to see if the above numbers (80 Hits/Second) are in fact
> feasible with apache/mod_proxy on one box. Are there any benchmarks
> around? Does someone have a similar setup and how many requests can they
> serve?  Should I up MaxClients any further? Will I get better results
> using a newer version of apache? Or should I give up and stick with
> squid?

Apache can easy handle 80r/s on Ethernet or localhost connection.
But if connections are slow (i.e. modem users) and responses
are big enough then you can reach MaxClients. As far as I know
80r/s rate requires about 400-600 Apache with 20-40K responses.
If your responses are bigger then more Apaches you need.

You can increase MaxClients until your swap is free.
On 1G you can run about 1000-2000 plain Apaches.

But if you plan to use mod_proxy to proxy backend I think
you should use mod_accel.

Igor Sysoev