EZLO so far has been using a fastcgi backend, with lightty up front. However, this hasn’t been the best of worlds, since the dispatch.fcgi processes would die at a certain time in the morning, and I couldn’t figure out how why or how to find out how (I got as far as trying to parse through the process accounting). I just got fed up and decided to ditch fastcgi and run a full-fledged http server as a backend.
There was a post I read a while back (I can’t find it, though) which claimed that cgi and fastcgi are hacks, and that using the web server as a proxy for application specific web servers is the simpler, more transparent method. HTTP has been around for ages, in contrast with fastcgi, the young protocol that no one loves.
With a dual mongrel backend (mongrel being a ruby/c web server), I’ve noted that the speed of the site seems to have dropped, and memory usage jumped up; however, mongrel knows I’m in development mode, so we’ll have to see how it responds when I push it into production mode. The memory usage isn’t something I’m happy about, but I’m not sure what else I could do, since they’re actually just full-blown web servers. I just tell myself it’ll be more flexible in the long run…
Also, as I’ve been doing alot of reorganization of the directory structure in anticipation of a release, I’ve thought about how to package up EZLO into something distributable seems less than easy, meaning it might actually take an appreciable amount of effort to just package it up into a release. Just a note.