You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Cosimo Streppone <co...@streppone.it> on 2008/07/22 00:29:59 UTC

Load peaks and throttling

Hi,

I'm currently working on a "large" (for some meaning of "large", of course)
community web site, using mp2 with mostly handlers and some registry  
scripts.

The architecture is basically composed of:
- a few load-balanced frontend apaches
- several load-balanced mp2 backends
- a replicated mysql db

 From time to time, we are seeing very high peaks of traffic on
our backends, with db connections and backend threads quickly going up.
This rapidly causes backend load to increase and general slowdown
of the application.

Most of the times, these peaks are caused by search engine bots
or automated spam clients.

I'm trying to fully understand this problem, but I'm considering
implementing throttling at the backend (maybe front?) level,
so I was wondering what is the current state-of-the-art
or best practice about this.

Any pointers or suggestions?

-- 
Cosimo

Re: Load peaks and throttling

Posted by Cosimo Streppone <co...@streppone.it>.
In data 22 luglio 2008 alle ore 02:53:40, Perrin Harkins <pe...@elem.com>  
ha scritto:

> On Mon, Jul 21, 2008 at 6:29 PM, Cosimo Streppone <co...@streppone.it>  
> wrote:
>> implementing throttling at the backend (maybe front?) level,
>
> [...] For the backend, the CPAN modules that do this are mostly mod_perl  
> 1

By CPAN modules you mean Apache::Throttle?

> but wouldn't be hard to port.

I can probably spend some time on that.

-- 
Cosimo

Re: Load peaks and throttling

Posted by Perrin Harkins <pe...@elem.com>.
On Mon, Jul 21, 2008 at 6:29 PM, Cosimo Streppone <co...@streppone.it> wrote:
> I'm trying to fully understand this problem, but I'm considering
> implementing throttling at the backend (maybe front?) level,
> so I was wondering what is the current state-of-the-art
> or best practice about this.

If you search the apache modules database for "throttle" and
"bandwidth" you'll see some front-end options.  For the backend, the
CPAN modules that do this are mostly mod_perl 1, but wouldn't be hard
to port.

- Perrin