Some questions about perlbal

Brad Fitzpatrick brad at danga.com
Sat Jan 29 12:56:30 PST 2005



On Sat, 29 Jan 2005, Pedro Melo Cunha wrote:

> Hi,
>
> I got perlbal running on a small server for testing purposes. I have a
> large mod_perl application that uses a lot of memory, and I'm testing
> perlbal to put in front of this app, to try and reduce the number of
> backends. I have some doubts:
>
>   - is it possible to have perlbal listen to a single port but do
> different things based on the virtual host?

No.

>   - is it possible to have perlbal treat locally a part of the
> uri-space? For ex: all the /static/ url's can be send directly from
> local disk without going to the backend. Do I have to use reproxy for
> this?

I believe yes, but Mark will have to reply with the details.

>   - any general ideias about how to tune performance? My first results
> with ab where not that good (with perlbal, my site is 4 times slower in
> terms of request per second.

I'm not sure ab is the best way to measure Perlbal's utility.

Also, of course it'll be slower going through two layers.  I'd compare it
to other reverse proxies as well.

What Perlbal's good for is real world performance stuff... not ab.  Things
like buffering responses to users (who aren't as fast as ab) and
intelligently dealing with HTTP responses from backend web nodes that
differ wildly in response time, including machines with very different
specs/capabilities.

And the main reason for Perlbal:  the reproxy code.

If you don't need to reproxy, and you don't have multiple machines you
need to load balance amongst, there isn't a huge reason to use any proxy,
including Perlbal.

What are you looking for?


>
> With Perlbal:
>
> ab -n 40000 -c 10 -k http://www.simplicidade.org/static/video/list.html
> Server Software:        Apache/2.0.46
> Server Hostname:        www.simplicidade.org
> Server Port:            80
>
> Document Path:          /static/video/list.html
> Document Length:        3253 bytes
>
> Concurrency Level:      10
> Time taken for tests:   151.502 seconds
> Complete requests:      40000
> Failed requests:        0
> Broken pipe errors:     0
> Keep-Alive requests:    0
> Total transferred:      142160000 bytes
> HTML transferred:       130120000 bytes
> Requests per second:    264.02 [#/sec] (mean)
> Time per request:       37.88 [ms] (mean)
> Time per request:       3.79 [ms] (mean, across all concurrent requests)
> Transfer rate:          938.34 [Kbytes/sec] received
>
> Without perlbal:
> ab -n 40000 -c 10 -k http://www.simplicidade.org/static/video/list.html
> Server Software:        Apache/2.0.46
> Server Hostname:        www.simplicidade.org
> Server Port:            80
>
> Document Path:          /static/video/list.html
> Document Length:        3253 bytes
>
> Concurrency Level:      10
> Time taken for tests:   33.638 seconds
> Complete requests:      40000
> Failed requests:        0
> Broken pipe errors:     0
> Keep-Alive requests:    39611
> Total transferred:      143629596 bytes
> HTML transferred:       130126506 bytes
> Requests per second:    1189.13 [#/sec] (mean)
> Time per request:       8.41 [ms] (mean)
> Time per request:       0.84 [ms] (mean, across all concurrent requests)
> Transfer rate:          4269.86 [Kbytes/sec] received
>
> Best regards,
> --
> Pedro Melo Cunha - <melo at isp.novis.pt>
> Novis Telecom, S.A. - Dir. Rede - ISP <http://www.novis.pt/>
> Edifício Novis - Estrada da Outurela, 118 - 2795-606 Carnaxide
> tel: +351 21 0104340 - fax: +351 21 0104301
>
>


More information about the perlbal mailing list