473,395 Members | 1,756 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

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

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?
Jul 6 '06 #1
6 2122
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.

Jul 6 '06 #2
>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?)
Jul 7 '06 #3
>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.
Jul 7 '06 #4
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.

Jul 7 '06 #5
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" <is***********@gmail.comwrote in message
news:11**********************@m73g2000cwd.googlegr oups.com...
>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.

Jul 7 '06 #6
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

Jul 7 '06 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Henri Vilminko | last post by:
I installed the Zend PHP enabler for Sun ONE Web Server which is basically a wrapper to run PHP in fastcgi mode. The interpreter runs fine but there's one nasty problem: PHP doesn't use the PHPRC...
8
by: Chris Gray | last post by:
Is there such a beast? In particular, I'm looking for a production-quality proxy server fully compliant with HTTP/1.1 written in Python. If there isn't, is there anything that comes close? ...
0
by: Phillip J. Eby | last post by:
PEP: 333 Title: Python Web Server Gateway Interface v1.0 Version: $Revision: 1.1 $ Last-Modified: $Date: 2004/08/27 17:30:09 $ Author: Phillip J. Eby <pje at telecommunity.com> Discussions-To:...
23
by: walterbyrd | last post by:
Way back when, I got a lot of training and experience in highly structued software development. These days, I dabble with web-development, but I may become more serious. I consider php to be an...
10
by: Vincent Delporte | last post by:
Hi I'm still a newbie when it comes to web applications, so would like some help in choosing a solution to write apps with Python: What's the difference between using running it through...
0
by: AMDRIT | last post by:
I am looking for better concrete examples, as I am a bit dense, on design patterns that facilitate my goals. I have been out to the code project, planet source code, and microsoft's patterns and...
34
by: Victor Kryukov | last post by:
Hello list, our team is going to rewrite our existing web-site, which has a lot of dynamic content and was quickly prototyped some time ago. Today, as we get better idea of what we need, we're...
2
by: Jay Loden | last post by:
All, In studying Python, I have predictably run across quite a bit of talk about the GIL and threading in Python. As my day job, I work with a (mostly Java) application that is heavily threaded....
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.