[Nitro] Nitro on Apache

Robert Mela rob at robmela.com
Wed Oct 3 16:08:08 EDT 2007

For sure -- it'd be labor intensive and tedious to take a legacy 
framework with all its associated plugins from disparate sources and 
make it thread-safe.  You'd have to make the default mode 
single-threaded and allow a year or two for plugins and new development 
to catch up.

There are actually very few cases where a framework user would need to 
consider concurrency.  Most of the shared resources are things like 
session stores, database connections -- and all that's taken care of by 
the framework.  Presumably a developer advanced enough to create a 
shared resource is also someone who has a clue as to what needs to be done.

s.ross wrote:
> Have you ever tried to make an app thread-safe? The dependencies are 
> so bizarre that the testability of the app vastly increases in 
> complexity. Bugs are subtle and don't happen often -- even then, they 
> are not readily reproducible. Worse, they may not even be in your code!
> I've been a proponent (in the past) of some kind of MT Rails, but the 
> more I think about injecting mutexes or bracketing sections of code 
> with semaphores, etc, etc, hoping I've made my code reentrant, the 
> less I like it when compared to the multiprocess model. Note also that 
> a good deal of any Web app is made up of instance objects which are 
> typically not long-lived and don't benefit from MT. So you get to 
> think about a whole different set of things: Where do I store 
> app-global data and how do I store thread-local data?
> This can be a nightmare for request/response cycles that typically 
> take milliseconds and for which a multiprocess alternative exists.
> Just my $.02
> On Oct 3, 2007, at 10:25 AM, Kirk Haines wrote:
>>> I would quite happily trade that in for the
>>> memory and performance overhead of whatever multiplexing or 
>>> multithreading
>>> scheme is used in the app server.
> ------------------------------------------------------------------------
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general

-------------- next part --------------
A non-text attachment was scrubbed...
Name: rob.vcf
Type: text/x-vcard
Size: 116 bytes
Desc: not available
Url : http://rubyforge.org/pipermail/nitro-general/attachments/20071003/5b4f16e5/attachment.vcf 

More information about the Nitro-general mailing list