about summary refs log tree commit homepage
path: root/lib/rainbows/rev_thread_spawn.rb
DateCommit message (Collapse)
2010-12-28complete Rev => Coolio renaming
We use Cool.io internally everywhere now, but preserve Rev-based models for anybody using them.
2010-12-27doc: misc cleanups and additions for RDoc
This is also our website, so we need to document the new Cool.io-based concurrency options for users and point existing Rev* users to it.
2010-12-26rev_thread_*: unindent and split out
This should make classes easier to find and hopefully make our code easier to follow.
2010-12-26rename rev/thread => rev/thread_client
While we're at it, unindent
2010-07-10doc: avoid documenting internals on RDoc website
Since we suck at building websites, we just rely on RDoc as a website builder. And since Rainbows! is an application server (and not a programming library), our internal API should be of little interest to end users. Anybody interested in Rainbows! (or any other project) internals should be reading the source.
2010-01-07Update docs + tests to reflect Rev 0.3.2 release
Rev 0.3.2 makes performance with Threads* under Ruby 1.8 tolerable.
2009-12-02add RevThreadPool concurrency model
This should be like RevThreadSpawn except with more predictable performance (but higher memory usage under low load).
2009-11-27rev_thread_spawn: more 1.8 notes
2009-11-26RevThreadSpawn: hope for 1.8 performance
Patches submitted to rev-talk, awaiting feedback and hopefully a new release.
2009-11-26cleanup and refactor error handling
Make sure app errors get logged correctly, and we no longer return a 500 response when a client EOFs the write end (but not the read end) of a connection.
2009-11-25Documentation updates for new concurrency models
2009-11-24rework RevThreadSpawn without TeeInput and 1.8 support
Exposing a synchronous interface is too complicated for too little gain. Given the following factors: * basic ThreadSpawn performs admirably under REE 1.8 * both ThreadSpawn and Revactor work well under 1.9 * few applications/requests actually need a streaming "rack.input" We've decided its not worth the effort to attempt to support streaming rack.input at the moment. Instead, the new RevThreadSpawn model performs much better for most applications under Ruby 1.9
2009-11-15RevThreadSpawn is still experimental
2009-11-09rev_thread_spawn: 16K chunked reads work better
When reading 4K chunks, performance is dismal under 1.8
2009-11-09rev_thread_spawn: make 1.9 TeeInput performance tolerable
Somehow 1.8 performance blows with shorter reads in the Rack application. This may be because the Rev framework uses a default 16K IO size and our test applications may request less.
2009-11-08initial cut of the RevThreadSpawn model
Seems to pass all tests, but that may only mean our test cases are lacking...