Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-08 Thread Jack
Thanks Tim and Gerard for recommending karrigell.

I just checked it out. It is indeed a nice package. However, I didn't find 
it
easier to learn or use than CherryPy though. I read through CherryPy 
tutorials
and have got a good idea how to use it. I also read Karrigell docs. The way
Karrigell uses subpath behind CGI file name is a little strange to me. 
Nonetheless,
Karrigell looks very nice to me but I may start with CherryPy.

What's missing (according to my requirement/wishlist) is, as a web server, 
the
build-in web server does not handle CGI or FastCGI apps, making python
the only way to write apps...



Tim Williams [EMAIL PROTECTED] wrote in message 
news:[EMAIL PROTECTED]
 On 07/07/06, Jack [EMAIL PROTECTED] wrote:
 I just did some testing between CherryPy's web server and lighttpd.
 My test was very simple and I used ab.exe for this purpose.
 CherryPy web server can serve about 140 simple request / second, while
 lighttpd can handle around 400 concurrent requests.

  You haven't really said much about your requirements though.  Perhaps
  if you describe them in more detail (for example, what does high
  performance mean to you?) someone can make a more useful 
  recommendation.
 

 Karrigell has an async server, in standalone mode it won't be as fast
 as lighttpd but its simpler to use and code in than cherrypy.
 However, it can also work behind lighttpd,  so you might get a good
 mix of server speed and fast development time.

 http://www.karrigell.com

 HTH :) 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Jack
I just did some testing between CherryPy's web server and lighttpd.
My test was very simple and I used ab.exe for this purpose.
CherryPy web server can serve about 140 simple request / second, while
lighttpd can handle around 400 concurrent requests.

 You haven't really said much about your requirements though.  Perhaps
 if you describe them in more detail (for example, what does high
 performance mean to you?) someone can make a more useful recommendation.

 Jean-Paul 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Tim Williams
On 07/07/06, Jack [EMAIL PROTECTED] wrote:
 I just did some testing between CherryPy's web server and lighttpd.
 My test was very simple and I used ab.exe for this purpose.
 CherryPy web server can serve about 140 simple request / second, while
 lighttpd can handle around 400 concurrent requests.

  You haven't really said much about your requirements though.  Perhaps
  if you describe them in more detail (for example, what does high
  performance mean to you?) someone can make a more useful recommendation.
 

Karrigell has an async server, in standalone mode it won't be as fast
as lighttpd but its simpler to use and code in than cherrypy.
However, it can also work behind lighttpd,  so you might get a good
mix of server speed and fast development time.

http://www.karrigell.com

HTH :)
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Gerard Flanagan

Tim Williams wrote:
 On 07/07/06, Jack [EMAIL PROTECTED] wrote:
  I just did some testing between CherryPy's web server and lighttpd.
  My test was very simple and I used ab.exe for this purpose.
  CherryPy web server can serve about 140 simple request / second, while
  lighttpd can handle around 400 concurrent requests.
 
   You haven't really said much about your requirements though.  Perhaps
   if you describe them in more detail (for example, what does high
   performance mean to you?) someone can make a more useful recommendation.
  

 Karrigell has an async server, in standalone mode it won't be as fast
 as lighttpd but its simpler to use and code in than cherrypy.
 However, it can also work behind lighttpd,  so you might get a good
 mix of server speed and fast development time.

 http://www.karrigell.com


Yes, agree about Karrigell's quick development time - an almost flat
learning curve if you've programmed for the web before, and none of the
arcana which you can run into  elsewhere.

high performance? - I'm using it to provide an intranet for a small
library with *three* networked computers - performance is impeccable!

Gerard

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Tim Williams
On 7 Jul 2006 06:27:43 -0700, Gerard Flanagan [EMAIL PROTECTED] wrote:

 Tim Williams wrote:
  On 07/07/06, Jack [EMAIL PROTECTED] wrote:
   I just did some testing between CherryPy's web server and lighttpd.
   My test was very simple and I used ab.exe for this purpose.
   CherryPy web server can serve about 140 simple request / second, while
   lighttpd can handle around 400 concurrent requests.
  
You haven't really said much about your requirements though.  Perhaps
if you describe them in more detail (for example, what does high
performance mean to you?) someone can make a more useful 
recommendation.
   
 
  Karrigell has an async server, in standalone mode it won't be as fast
  as lighttpd but its simpler to use and code in than cherrypy.
  However, it can also work behind lighttpd,  so you might get a good
  mix of server speed and fast development time.
 
  http://www.karrigell.com
 

 Yes, agree about Karrigell's quick development time - an almost flat
 learning curve if you've programmed for the web before, and none of the
 arcana which you can run into  elsewhere.

 high performance? - I'm using it to provide an intranet for a small
 library with *three* networked computers - performance is impeccable!

If you disable the Reverse-DNS lookups in one of the python (not
Karrigell) web modules (I'll dig out a previous post somewhere about
this),  it speeds up karrigell tremendously,  my apps aren't huge,
but I have no problems with karrigell across   the internet :)
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Jack
I wrote the last posting at late late night and I didn't know what I was
typing at that time ;-p

I didn't mean the test with CherryPy was not concurrent
connections, or the test with lighttpd was all concurrent
connections. I actually tried both concurrent (-c in ab command line)
and non-concurrent (without -c in ab command line) and I tried
the threading and threadpooling in CherryPy. The result did not
vary much.

This article http://www.cherrypy.org/wiki/CherryPySpeed says CherryPy
can process around 400-500 requests/second. It's set up is:

  Pentium M 1.6, 1G RAM, Windows XP2 laptop, test done with apache 2.0.41 
ab.

I have a slightly better hardware set up:

  Pentium M 1.7MHz, 1.5G RAM on Windows XP2 laptop, test done with Apache 
2.2 ab

However, I don't get even close. The best I get is around 140
requests/second. I'm using the same test script as the CherryPy test
with slight modification just to make it run. As a matter of fact,
the Cygwin build of lighttpd only gets around 430 requests/second for
a 2-byte static file. I disabled firewall and antivirus on the box when
tests were done. Any idea about the huge difference? It would be very
interesting if some CherryPy (or python) users can post their performance
benchmarks.

Jack

Jack [EMAIL PROTECTED] wrote in message 
news:[EMAIL PROTECTED]
I just did some testing between CherryPy's web server and lighttpd.
 My test was very simple and I used ab.exe for this purpose.
 CherryPy web server can serve about 140 simple request / second, while
 lighttpd can handle around 400 concurrent requests.

 You haven't really said much about your requirements though.  Perhaps
 if you describe them in more detail (for example, what does high
 performance mean to you?) someone can make a more useful recommendation.

 Jean-Paul

 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread fumanchu
Jack wrote:
 I wrote the last posting at late late night and I didn't know what I was
 typing at that time ;-p

 I didn't mean the test with CherryPy was not concurrent
 connections, or the test with lighttpd was all concurrent
 connections. I actually tried both concurrent (-c in ab command line)
 and non-concurrent (without -c in ab command line) and I tried
 the threading and threadpooling in CherryPy. The result did not
 vary much.

 This article http://www.cherrypy.org/wiki/CherryPySpeed says CherryPy
 can process around 400-500 requests/second. It's set up is:

   Pentium M 1.6, 1G RAM, Windows XP2 laptop, test done with apache 2.0.41
 ab.

 I have a slightly better hardware set up:

   Pentium M 1.7MHz, 1.5G RAM on Windows XP2 laptop, test done with Apache
 2.2 ab

 However, I don't get even close. The best I get is around 140
 requests/second. I'm using the same test script as the CherryPy test
 with slight modification just to make it run. As a matter of fact,
 the Cygwin build of lighttpd only gets around 430 requests/second for
 a 2-byte static file. I disabled firewall and antivirus on the box when
 tests were done. Any idea about the huge difference? It would be very
 interesting if some CherryPy (or python) users can post their performance
 benchmarks.

It would be good to know which version of CherryPy you are using. That
wiki page is talking about the CP 2.0 branch; 2.1 and later are quite
different. If you have a later version, try using
cherrypy/test/benchmark.py

Note also that you can use lighttpd as an HTTP server for CherryPy apps
via FCGI/SCGI.


Robert Brewer
System Architect
Amor Ministries
[EMAIL PROTECTED]

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Istvan Albert
  I will have to install lighttpd or other web servers.

 If it is a Python web server, it would be nice to extend it by putting code
 right into the web server. The performance should be better than FastCGI
 because it removes the cost to send the requests/replies back and forth.

you'll need to make a distinction between a webserver written in python
(primary purpose to serve data) and a web framework that integrates
python and allows you to generate said data with python

as for the so called load test that you mention above, those tests
are pointless and provide no insight whatsoever to the realistic
behavior of the server ... unless of course all your users are expected
to connect from the same machine while asking for the same 2 byte file
at the maximum speed the system allows them to.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Jack
You are right. Load test can be complicated because of the various patterns
of web applications and usages. The simple tests I mentioned and conducted 
just
give myself some idea about the performance. Given the same set up, some
numbers should be comparable and reveal some aspects on web servers'
performance. They are by no means formal load tests, but they are helpful to 
me :-)

Istvan Albert [EMAIL PROTECTED] wrote in message 
news:[EMAIL PROTECTED]
  I will have to install lighttpd or other web servers.

 If it is a Python web server, it would be nice to extend it by putting 
 code
 right into the web server. The performance should be better than FastCGI
 because it removes the cost to send the requests/replies back and forth.

 you'll need to make a distinction between a webserver written in python
 (primary purpose to serve data) and a web framework that integrates
 python and allows you to generate said data with python

 as for the so called load test that you mention above, those tests
 are pointless and provide no insight whatsoever to the realistic
 behavior of the server ... unless of course all your users are expected
 to connect from the same machine while asking for the same 2 byte file
 at the maximum speed the system allows them to.
 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread thorley
Just thought I'd mention it. As stated in some posts I put on the list
in the last few days, I'm working on a FastCGI server for python. Of
course its not as fast as lighttpd, but I think it still has many
applications. I've currently got a *very* simple prototype, but I
expect the finished module to subclass BaseHTTPRequestHandler and work
similar to the CGIHTTPServer module.

I'll let everyone know when its ready, and you can try it out if you
like ;)
--
mthorley

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-07 Thread Jack
I'm using CherryPy 2.2.1.
I just ran benchmark.py multiple times. The fastest it got is 195 req/sec, 
with
50 threads. Python was taking 50+% CPU when the test was running.

 It would be good to know which version of CherryPy you are using. That
 wiki page is talking about the CP 2.0 branch; 2.1 and later are quite
 different. If you have a later version, try using
 cherrypy/test/benchmark.py

 Note also that you can use lighttpd as an HTTP server for CherryPy apps
 via FCGI/SCGI.


-- 
http://mail.python.org/mailman/listinfo/python-list


Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Jack
Basically I am trying to find a high performance web server. Since
Python is installed on all of the servers, It'll be great if the web
server is written in Python as well. Otherwise, I will have to install
lighttpd or other web servers.

Then the largest issue with Python-based web servers is performance.
That's why I start to look into medusa or twisted-based servers. Twisted
seems too big and complicated for what I really want to do and the
original medusa web server only has very basic functionality.

And I'd like the web server to have CGI/FastCGI and possible SCGI
support for flexibility in application development. My applications
here are really internal testing or data provider tools. Am I asking
a lot? I think this is basic requirement for a web server these days :D

What it looks like is that, although there seem to be many Python http
servers available, there isn't really one that's simple, fast and
feature-rich (cgi/fcgi/scgi) - I guess I am asking too much ;-p
It seems that the only candidate that meetings the requirements but
written in Python is lighttpd.

Any recommendations? 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Jean-Paul Calderone
On Thu, 6 Jul 2006 09:36:25 -0700, Jack [EMAIL PROTECTED] wrote:
Basically I am trying to find a high performance web server. Since
Python is installed on all of the servers, It'll be great if the web
server is written in Python as well. Otherwise, I will have to install
lighttpd or other web servers.

Then the largest issue with Python-based web servers is performance.
That's why I start to look into medusa or twisted-based servers. Twisted
seems too big and complicated for what I really want to do and the
original medusa web server only has very basic functionality.

Even though it may seem that way, it really isn't.  Keep in mind that
since you're only looking for a web server, 90% of Twisted won't even
come into play for you.  If you want, you can even install *only* the
webserver (of course, unless you're on an embedded platform where disk
space is at a premium there's not really much point).

A bigger problem, I reckon, is that twisted.web doesn't support FastCGI
and twisted.web2 is still a moving target.

You haven't really said much about your requirements though.  Perhaps
if you describe them in more detail (for example, what does high
performance mean to you?) someone can make a more useful recommendation.

Jean-Paul
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Istvan Albert
Jack wrote:

 I will have to install lighttpd or other web servers.

do that.

If all you need is a webserver there's little reason to have it in
python. Just use one of the several high quality open source webservers.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Jack
To be honest, I'm not sure what kind of performance I can get even
with medusa or twisted. I assume it won't be as fast as servers
written in C/C++ and use async sockets, but should be much better than
multi-processed or multi-threaded servers in written in Python.

Not sure if anyone else has an idea about medusa or twisted performance.
Any chance that it's close to Apache?

But even so, I guess I may still have to go with lighttpd for FastCGI/
CGI/SCGI support.

 You haven't really said much about your requirements though.  Perhaps
 if you describe them in more detail (for example, what does high
 performance mean to you?) someone can make a more useful recommendation.

 Jean-Paul 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Jack
 I will have to install lighttpd or other web servers.

 do that.

 If all you need is a webserver there's little reason to have it in
 python. Just use one of the several high quality open source webservers.

lighttpd is a great web server. I just didn't want to bother download the 
source,
configure, make and make install, and have a bunch of files installed into 
the system
(The binaries are mostly not the latest version.)  If a server can be set up 
with a few
python files, it sounds like a cleaner approach :)

lighttpd does have an option to make a monilithic build that has everything 
in
one file but somehow I couldn't make the scons-based build work. (Any tips?) 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Looking for a high performance web server written in Python, and supports CGI/FastCGI

2006-07-06 Thread Jack

 I will have to install lighttpd or other web servers.

 do that.

 If all you need is a webserver there's little reason to have it in
 python. Just use one of the several high quality open source webservers.

If it is a Python web server, it would be nice to extend it by putting code
right into the web server. The performance should be better than FastCGI
because it removes the cost to send the requests/replies back and forth. 


-- 
http://mail.python.org/mailman/listinfo/python-list