AOLserver is a threaded Web server that maintains persistent database connections, thus reducing two of the biggest sources of overhead in the serious Web business: starting a new process for each CGI script, and connecting to the database for each process. It also has a full, uncrufty programming language tightly knit to its internals: Tcl.
AOLserver has also been around since at least 1995, and is being used for many extremely high-volume Web sites. Most notably, ArsDigita has been using it for many years.
Unfortunately, AOLserver has suffered not only from the AOL in its name but from its adoption of the Tcl scripting language, which, while better than PHP and other scriptlet languages, is not really taken seriously by anyone other than Tcl programmers and Philip Greenspun.
Hence, PyWX, which adds a full, object-oriented, thread-safe language - Python - into the mix. Now there's no reason not to use AOLserver!
A pro-AOLserver piece by Philip Greenspun -- note that most everything said about Tcl that's positive in this article also applies to Python.
Philip also has an Introduction to AOLserver that's quite nice.
A slightly out-of-date review of AOLserver at DaveCentral.
Some AOLserver resources at am.net.
Implementing the SMS server, or why I switched from Tcl to Python -- description of a research solution, by Frank Stajano.
Comparisons between Python and other languages.
Humor: Great Yet Worthless Ideas
Zope is an open-source application server written in Python.
Chuck Esterbrook wrote a long message about why he didn't like Zope; a particularly interesting excerpt was:
* I encountered _WAY_ too many people who said they didn't understand how to develop a site with Zope yet, but they were still trying.Kendall Clark (in a message about Apache) mentioned that:
In general, and I've tried to make this point in Python land a few times, w/ very little positive response, I fear Zope has been *bad* for Python Web development, as it's kind of sucked all the oxygen out of the room. I'm glad to see I'm not the only one that sees things this way.
Still another person, Brent Fulgham, noted that the integrated development approach required by Zope was really 'more the "VisualBasic" way' than the Open Source way.
(These are only the highlights of a discussion that's fully available in the archives, subject "Zope users".)
All in all, Zope is probably an excellent framework for some projects. But if you have to learn the entire framework to make use of any part of it, it can act as a straitjacket until you've learned enough. With PyWX, knowing the 'print' command in Python is enough to start writing scripts, and you can mix and match other Python Web utilities at will, as you need them.
There is a fuller discussion of Zope vs. ACS/AOLserver from a Zopocentric view available, and some responses in the OpenACS forum are here.
Kendall Clark had a few things to say about the dominant Python modules for Apache, httpadpy and PyApache.
The strongest reason not to use Apache is that it's not multithreaded yet, and, even once the 2.0 version has stabilized, it's unlikely to be truly bulletproof for at least another year.
AOLserver is also the product of a small team of excellent programmers. Its design has been thoroughly thought through, and it shows: extending the base AOLserver code is, generally speaking, dead easy. Apache, being the amalgam of code that it is, is not so single-minded: so, while it has more functionality, it's more difficult to integrate that functionality with your own code in a clean way.
the really exciting thing about PyWX is that it joins 2 very mature, robust technologies in an appropriate way.That's enough of tooting our own horn, though; if you try PyWX and don't like it, we'll return the price of the software ;).