DEPLOY FAQ HACKING LICENSE NEWS README SIGNALS Sandbox Static_Files Summary TUNING Test_Suite rainbows_1 vs_Unicorn
Rainbows ActorSpawn AppPool Base Configurator Coolio CoolioThreadPool CoolioThreadSpawn DevFdResponse Epoll EventMachine FiberPool FiberSpawn MaxBody NeverBlock Rev RevFiberSpawn RevThreadPool RevThreadSpawn Revactor Sendfile ServerToken StreamResponseEpoll ThreadPool ThreadSpawn ThreadTimeout WriterThreadPool WriterThreadSpawn XEpoll XEpollThreadPool XEpollThreadSpawn

module Rainbows::CoolioThreadPool

A combination of the Coolio and ThreadPool models. This allows Ruby Thread-based concurrency for application processing. It DOES NOT expose a streamable "rack.input" for upload processing within the app. DevFdResponse should be used with this class to proxy asynchronous responses. All network I/O between the client and server are handled by the main thread and outside of the core application dispatch.

Unlike ThreadPool, makes this model highly suitable for slow clients and applications with medium-to-slow response times (I/O bound), but less suitable for sleepy applications.

This concurrency model is designed for Ruby 1.9, and Ruby 1.8 users are NOT advised to use this due to high CPU usage.

:pool_size vs worker_connections

In your Rainbows! config block, you may specify a Thread pool size to limit your application concurrency independently of worker_connections.

Rainbows! do
  use :CoolioThreadPool, :pool_size => 50
  worker_connections 100

In extremely rare cases, this may be combined with Rainbows::AppPool if you have different concurrency capabilities for different parts of your Rack application.

RubyGem Requirements

Included modules: Rainbows::Coolio::Core
Pages Classes Methods

mail archives:
source code: git clone
	torsocks git clone http://ou63pmih66umazou.onion/rainbows.git