General performance of perlbal

dormando dormando at
Sun May 21 19:35:06 UTC 2006

Can you give more information on your benchmark and test? Are you 
running the proxied service on the same machine as perlbal and ab? Is 
your test page dynamic or static? Large or small? Just dump out all of 
the details :)

There are also a few profiling options that come with perlbal... Check 
the docs and sources for their usage. I would also recommend trolling 
through all of the stats outputs as you run your test. You can see if 
backend connections are actually being reused, if persistent client 
connections are being used, etc.

I can handle a couple hundred reproxied requests/sec through a single 
instance on a 2ghz opteron without much trouble or memory bloat. That 
assumes a lot of things are actually working though. My "worst case" 
performs notably less.


Mika Vatanen wrote:
> Hello,
> I have been trying perlbal installation but have experienced very high
> CPU usage and poor performance numbers. The maximum performance obtained
> has been around 150 requests / second measured by apache bench on a
> 2.5Ghz Celeron box. According to strace, perlbal uses epoll but still
> gets CPU bound.
> What are the possible requests/s numbers that perlbal could handle if
> everything worked well? Any ideas of what could be the problem and how
> could it be fixed?
> Thanks!
> -- Mika
> ---
> Kernel: 2.6.16
> Distribution: Fedora Core 4
> Perl: 5.8.6
> Software installed: Danga-Socket 1.48, Perlbal 1.41,
> Perlbal-XS-HTTPHeaders-0.18
> Perlbal configuration:
> ---
> xs enable headers
>   SET listen          =
>   SET role            = reverse_proxy
>   SET pool            = my_apaches
>   SET persist_client  = on
>   SET persist_backend = on
>   SET verify_backend  = on
> ENABLE balancer
> ---

More information about the perlbal mailing list