A Fiber-based concurrency model for Ruby 1.9. This uses a pool of Fibers to handle client IO to run the application and the root Fiber for scheduling and connection acceptance.
This concurrency model is difficult to use with existing applications, lacks third-party support, and is thus NOT recommended.
The pool size is equal to the number of worker_connections
. Compared to the ThreadPool
model, Fibers are very cheap in terms of memory usage so you can have more active connections. This model supports a streaming "rack.input" with lightweight concurrency. Applications are strongly advised to wrap all slow IO objects (sockets, pipes) using the Rainbows::Fiber::IO class whenever possible.
Included modules: Rainbows::Fiber::Base
Pages
Classes
Methods
mail archives: https://yhbt.net/rainbows-public/ http://ou63pmih66umazou.onion/rainbows-public/ nntp://news.public-inbox.org/inbox.comp.lang.ruby.rainbows nntp://ou63pmih66umazou.onion/inbox.comp.lang.ruby.rainbows nntp://news.gmane.io/gmane.comp.lang.ruby.rainbows.general public: rainbows-public@yhbt.net source code: git clone https://yhbt.net/rainbows.git torsocks git clone http://ou63pmih66umazou.onion/rainbows.git