From: Zed Shaw Date: 2006-01-21T10:33:35+09:00 Subject: Re: [ANN] Mongrel 0.1.1 -- A Fast Ruby Web Server (It Works Now, Maybe) On Jan 20, 2006, at 2:33 PM, Michael Schoen wrote: > Zed, > > Cool stuff. Is the intent that this enables an even more > straightforward approach for running apps (such as a RoR app) than > scgi under lighttpd? Ie., rather than scgi under lighttpd, just use > mod_proxy? > Yes, the intention is to produce the optimal deployment scenario for Ruby web applications. A secondary purpose is to prove my unofficial "Zed's STFU Performance Razor": "All languages are as fast as the fastest language they can access so STFU." :-) I'm imagining that if I can get the various web frameworks to run well and fast under Mongrel, and sprinkle in a few sexy features, then it'd be the best way to deploy the applications. I'm thinking a primary concern is performance, followed by ease of deployment, then management, and finally API simplicity. What's nice with just plain HTTP is that there's already a mountain of support for production HTTP hosting and deployment technology. > Did you read this post, where Mark Mayo wonders why the newer > frameworks haven't just been using an http interface (and instead > have struggled with fcgi)? > > http://www.vmunix.com/mark/blog/archives/2006/01/02/fastcgi-scgi- > and-apache-background-and-future/ > Yeah, I read that post literally as I was building the precursor to SCGI, and then decided to take the plunge and just do it. The story goes like this: 1) Win32 IIS dudes beg me to get SCGI working under IIS. 2) I like Win32 dudes, hell I love everybody the same (which is very little, but it's equal at least). 3) I start working on an HTTP->SCGI proxy. I use Ragel to make a clean, fast, and correct parser. 4) madrobby schools me on my parser with his mountain of browsers until I get it working better. 5) I keep asking myself, "Why don't I just take the parser and make a Ruby web server?" 6) I keep asking this but it doesn't sink in. I decide to toy with the idea. Someone shows me the articl Then I read the above article and just do it. 7) What you have is about 3-4 days later. So, that's the semi-official story. What I also have though is a HTTP parser that I can break out and make into a library. This means that other languages could possibly pick it up and write their own similarly fast web servers with minimal effort. Keep your fingers crossed. Zed A. Shaw http://www.zedshaw.com/