On Wed, 22 Mar 2000, Stephan Richter wrote: :>i agree on apache increasing your performance when serving static :>files (for instance images), but wouldn't url rewriting and the proxy :>pass module of apache be an even better solution? i just switched from :>PCGI to the Rewrite/Proxypass combo because of the additional overhead :>of PCGI. : :Mmmhh, I have to have a look. Okay, I just read the the little tutorial. :Does it really speed things up? :I guess SSL should not be hard using this solution. I will be thinking :about it. : :Anyone else? : some testing with apache benchmark: the setup is an apache 1.3.12 sitting on port 1988. /tstfolder/bmeth is a very simple dtml method ("i am bmeth in /tstfolder" <dtml-call "REQUEST.set('testvar', 'hm...')"> &dtml-testvar;). i do 1000 requests at 50 concurrent users, keepalive-connection via apache benchmark: first the result of doing a proxypass to zserver on port 8080: ------ /root# /usr/local/apache/bin/ab -n 1000 -c 50 -k -v 2 http://druck.kleinezeitung.at:1988/tstfolder/bmeth This is ApacheBench, Version 1.3c <$Revision: 1.38 $> apache-1.3 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-1999 The Apache Group, http://www.apache.org/ Benchmarking druck.kleinezeitung.at (be patient)...INFO: POST header == --- GET /tstfolder/bmeth HTTP/1.0 User-Agent: ApacheBench/1.3c Connection: Keep-Alive Host: druck.kleinezeitung.at Accept: */* --- Server Software: Zope/Zope Server Hostname: druck.kleinezeitung.at Server Port: 1988 Document Path: /tstfolder/bmeth Document Length: 25 bytes Concurrency Level: 50 Time taken for tests: 16.817 seconds Complete requests: 1000 Failed requests: 0 Keep-Alive requests: 0 Total transferred: 243000 bytes HTML transferred: 25000 bytes Requests per second: 59.46 Transfer rate: 14.45 kb/s received Connnection Times (ms) min avg max Connect: 0 1 38 Processing: 99 818 877 Total: 99 819 915 ---------------------- then i modify httpd.conf to get apache to talk to zope via PCGI / Zope.cgi (otherwise unchanged): ----------------------- /home/Zope# /usr/local/apache/bin/ab -n 1000 -c 50 -k -v 2 http://druck.kleinezeitung.at:1988/tstfolder/bmeth This is ApacheBench, Version 1.3c <$Revision: 1.38 $> apache-1.3 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-1999 The Apache Group, http://www.apache.org/ Benchmarking druck.kleinezeitung.at (be patient)...INFO: POST header == --- GET /tstfolder/bmeth HTTP/1.0 User-Agent: ApacheBench/1.3c Connection: Keep-Alive Host: druck.kleinezeitung.at Accept: */* --- Server Software: Apache/1.3.12 Server Hostname: druck.kleinezeitung.at Server Port: 1988 Document Path: /tstfolder/bmeth Document Length: 25 bytes Concurrency Level: 50 Time taken for tests: 21.984 seconds Complete requests: 1000 Failed requests: 0 Keep-Alive requests: 1000 Total transferred: 273050 bytes HTML transferred: 25000 bytes Requests per second: 45.49 Transfer rate: 12.42 kb/s received Connnection Times (ms) min avg max Connect: 0 15 355 Processing: 41 1058 6039 Total: 41 1073 6394 -------------------- conclusion: with proxy pass i get around 30% more requests per second and around 25% less connection time (and im not able to use keep-alive as it seems). please note that this is only a quick check and not scientific in any way, and naturally the benefits will diminish when more complicated pages are going to be served. if there are any other test results please let me know... peter. -- _________________________________________________ peter sabaini, mailto: sabaini@niil.at -------------------------------------------------