[Mongrel] swifty fly?

Zed A. Shaw zedshaw at zedshaw.com
Mon May 21 20:29:44 EDT 2007


On Mon, 21 May 2007 15:52:03 -0700
Andrew Arrow <andrew at geni.com> wrote:

> I heard about a new mongrel plugin or version that's single threaded and 
> uses non-blocking IO with events.  It's called something like "swifty 
> fly".  Anyone have a link for it?

There's was quite a few announced "mongrel needs some help" kind of
proxies:

* Swiftiply by Kirk Haines (as he mentioned)
 http://swiftiply.swiftcore.org/index.html

* Fuzed by Dave Fayram and Tom Preston-Warner (which is actually F U Zed
if Rumor is right) http://code.google.com/p/fuzed/

* drproxy by Lucas Carlson which will have a project page soon, but you
can grab super alpha code at http://rufy.com/drproxy.tgz

The interesting thing is all three have different approaches to the
same problem, but Fuzed and drproxy use Erlang rather than Ruby.

Fuzed is using Yaws (an Erlang web server) so it can do smarter HTTP
level load balancing and other goodies for a web app.

drproxy is doing just TCP level routing and clustering so it could work
for just about any protocol, but might not be so smart.

A big thing about all three solutions is they are auto-configurable in
that you fire up mongrel nodes and they tell the proxy about their
existence.  In a shared hosting environment this is a total disaster
for security (since anyone would just join your proxy without proper
encryption and security involved).  BUT, for people doing deployed apps
like most of the above authors, this is a really useful feature.

Finally, I'm holding judgement and not going to "bless" any of them.
None of the solutions will be put into Mongrel directly since I don't
think that's really needed.  The whole point of Mongrel is people can
modify it very easily to do what they need, rather than waiting for me
to be some kind of gate keeper.  That let's people use GPL code all
they want, write commercial solutions, do their own coding style, and
use any enhancers they feel like without having to be "blessed".

Another point I'd like to make is there's some great work coming from
the virtual machine camp.  I'm not going to try using EventMachine
stuff until I see how well or poorly Mongrel does on some of these new
VMs.  I'm hoping that the JRuby and Rubinius folks just fix threads,
IO, and GC once and for all and then everyone can live in a happy
loving land without relying on tons of nasty C++ to fix things.

I'll be posting a few more highlights and thoughts from railsconf2007
soon.

-- 
Zed A. Shaw
- Hate: http://savingtheinternetwithhate.com/
- Good: http://www.zedshaw.com/
- Evil: http://yearofevil.com/


More information about the Mongrel-users mailing list