The pure Ruby classifier is faster than the C classifier in the pathological case of only one handler (most Rails apps). They both scale linearly up to about 14 urls, at which point the C classifier performance curve goes flat. Hardly anybody uses that many handlers, so we dumped the 450 line Trie and C classifier for 30-odd lines of Ruby. This makes JRuby support much easier.
But seriously, even 8ish urls, the performance penalty per request for the Ruby classifier is about 5 microseconds per request on a Mac Mini. When your app is returning requests in the 100 microsecond range, then maybe you should start to care; until then, no. The C classifier is still available in the mongrel_experimental gem; if you install it, it will automatically be used. Evan On Nov 1, 2007 1:11 PM, <[EMAIL PROTECTED]> wrote: > Ah, well that makes sense! > > Thanks for clearing that up! > > > Quoting Kirk Haines <[EMAIL PROTECTED]>: > > > On 11/1/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > >> I'm curious to know why the URL classifier was moved from C code to > >> Ruby code. I am under the impression that Ruby code is often much > >> slower than C extensions. I'm also under the impression that the URL > >> classifier is somewhere that speed would be desirable. > > > > C code will generally be faster than Ruby code, yes. > > > > The thing with the classifier is that for small numbers of urls to > > classify, the pure ruby solution is as fast or faster than the trie > > based C classifier, and the decision was made that the simplification > > represented by switching to a pure ruby solution there was a > > beneficial tradeoff, since most people do not have more than a dozen > > handlers registered with a mongrel instance, so for most people there > > will be no performance loss. > > > > > > Kirk Haines > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users@rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Evan Weaver Cloudburst, LLC _______________________________________________ Mongrel-users mailing list Mongrel-users@rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users