Mailing List Archive

[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.
Re: [OT] Replacing reverse squid with mod_proxy [ In reply to ]
[.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: [OT] Replacing reverse squid with mod_proxy [ In reply to ]
----- Original Message -----
From: Hans Juergen von Lengerke <lengerkeh@sixt.de>
Date: Monday, March 25, 2002 4:20 pm
Subject: [OT] Replacing reverse squid with mod_proxy

> 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?

before giving up you should try 1.3.24 out of March 21 with a re-worked code for mod_proxy; regarding benchmarks I remember a comparison with the tux kernel server, iis5 and apache and more than 500 hits/sec for the last two was beaten by tux with a factor 3.
Should be enough for your purpose
_ ___
| | Irmund Thum
| |
Re: [OT] Replacing reverse squid with mod_proxy [ In reply to ]
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.
[OT] Replacing reverse squid with mod_proxy [ In reply to ]
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 [ In reply to ]
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
[OT] Replacing reverse squid with mod_proxy [ In reply to ]
25 marzec (pon) : 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.

I use similar configuration, but with no backhand or wackamole (yet :).

Frontend: apache+mod_proxy+mod_gzip (self compiled, static, very small)
Backends: apache+php (for dynamic content), mathopd (for static files/images)

Frontend is PentiumIII 700Mhz with 512MB ram. I dont use any cache stuff in
mod_proxy (mathopd for static files is really fast and lightweight solution),
but i compress (mod_gzip) all html pages which proxy forwards.

Memory usage on frontend is very low, here are some samples:
101 apaches - 77M Active
420 apaches - 155M Active
689 apaches - 210M Active
927 apaches - 265M Active
1298 apaches - 304M Active

Proxy avarage (from 10 days) is 40 requests/sec, but this number is of course
much bigger at high traffic hours.

apache+mod_proxy+mod_gzip is really cool solution

.ex.
--
Tomasz Szymczak http://gratka.pl/ http://naszemiasto.pl/ _.-. jgs
GCS/M d- s-:- a-- C+++$ UL++$>++++$ P++ L++>++++ E W++ N+ w O+ '( ^{_} (
PS+ PE !Y PGP+ t- X- R tv-- b++>+++ DI D>+++ G e>++++ h! r- y? `~\`-----'\
Umysł sprawia, że wszystko się zmienia, żeby upozorować upływ czasu )_)---)_)