(2003-02-03) Skunk Web App Server

Article about the SkunkWeb Python-base Application Server. SkunkWeb needed from the first to deal well with the massive loads of an extremely high-traffic Portal site, and needed to scale on MultiProcessor hardware; therefore, it was determined that a Multi Threaded Python application was not an option, since Python's global interpreter lock prevents native Python processes from effectively utilizing multiple CPU-s. SkunkWeb is a MultiProcess Pre-Forking daemon with a fixed number of persistent child processes that service requests. In a typical production setup, it would work behind Apache, and a small number of SkunkWeb processes can service requests from a larger number of Apache processes that handle networking with the client; by using a fixed-sized pool, one avoids over-frequent disconnections and reconnections from databases and the cost of creating and initializing python processes when the pool (re-) grows. In this regard, SkunkWeb is different than most other Python web frameworks, which tend to be multithreaded. Doesn't work on MsWindows. Is used for the site for WNYC Public Radio.


Edited:    |       |    Search Twitter for discussion

No twinpages!