[Zope] Advice needed: load balancing wih ZEO and Apache on So laris.

Tony McDonald tony.mcdonald@ncl.ac.uk
Mon, 03 Sep 2001 21:27:35 +0100


On 2/9/01 9:41 pm, "Steve Spicklemire" <steve@spvi.com> wrote:

> 
> Hi Tony,
> 
> I've achieved reasonable (though somewhat naive) ZEO load
> distribution (I won't call it balancing) this way:
> 
> In Apache:
> 
> 01 <VirtualHost 192.xxx.yyy.zzz:80>
> 02     ServerAdmin steve@spvi.com
> 03     ServerName test_balance.spvi.net
> 04     ErrorLog /var/log/spvi.net-error_log
> 05     CustomLog /var/log/spvi.net-access_log common
> 06
> 07
> 08     RewriteEngine on
> 09     #RewriteLog    /var/log/rewrite.log
> 10     #RewriteLogLevel  10
> 11     RewriteMap    balance_load_ext
> prg:/usr/local/share/apache/conf/balance_load_ext.py
> 12     RewriteRule   ^/(.*)$ ${balance_load_ext:$1}           [P,L]
> 13
> 14 </VirtualHost>
> 
> where balance_load_ext.py is:
> 
> 01 #!/usr/bin/env python
> 02
> 03 count = 0
> 04
> 05 import sys
> 06 import string
> 07
> 08 def translate(data):
> 09     global count
> 10     count = (count + 1) % 3
> 11     return 
> "http://www%i.spvi.net:14080/VirtualHostBase/http/test_balance.spvi.net:80/
> %s" % (count, data)
> 12
> 13
> 14 if __name__=='__main__':
> 15     while 1:
> 16         data = string.strip(sys.stdin.readline())
> 17         if not data:
> 18             break
> 19         print translate(data)
> 20         sys.stdout.flush()
> 
> 
> This distributes load between three machines, using Apache only. You
> could make the python script smarter to achieve something closer to real
> load balancing with a little effort.
> 
> -steve

That's an interesting method Steve (at least it's in Python and I can
understand it). Thing is that the poor python performance on our solaris
hardware is the driving force behind me trying to use ZEO!.

Wouldn't having a python script sitting in front of every request slow
things down a fair bit?

Cheers for the info though,
Tone.
-- 
Dr Tony McDonald,  Assistant Director, FMCC, http://www.fmcc.org.uk/
The Medical School, Newcastle University Tel: +44 191 243 6140
A Zope list for UK HE/FE  http://www.fmcc.org.uk/mailman/listinfo/zope