Forum: Ruby Reel 0.4.0: A Celluloid::IO-powered web server for Ruby with streaming and Websockets

4131d2f57a0db2a2b4d9a62bd389fd44?d=identicon&s=25 Tony Arcieri (Guest)
on 2013-09-15 00:05
(Received via mailing list)
Reel 0.4.0 (codenamed "Garbo") is out! You can learn more about it here:

Reel is an asynchronous web server based on Celluloid::IO and nio4r
is capable of processing multiple requests concurrently within a single
thread. You can think of it like the way EventMachine or Node.js work,
with Fibers to smooth out the callbacks, and Celluloid's excellent
for multithreading added. You can read more about Celluloid::IO here:

Reel supports usage with Rack (and Rails) using the reel-rack gem:

This version includes three major changes from the previous:

   - *Websocket API:* previously Reel would automatically return a
   Reel::WebSocket immediately upon a websocket connection. As of 0.4.0,
   now always returns a Reel::Request object. You can check if it's a
   websocket using Reel::Request#websocket? and hijack the request into
   Reel::WebSocket object using Reel::Request#websocket
   - *Streaming Support:* Reel 0.4.0 provides a Reel::RequestBody object
   which can be used for streaming requests. This object is an
Enumerable, and
   also supports a #readpartial method for Socket duck type-like
   - *Pipelining Support:* Previously Reel only supported synchronous
   request/response usage. Reel now has full support for HTTP
   allowing multiple requests to be consumed before a response is

Full changelog below:

   - Rack adapter moved to the reel-rack project
   - Pipelining support
   - Reel::Connection#each_request for iterating through keep-alive
   - Reel::Request#body now returns a Reel::RequestBody object instead
of a
   - New WebSocket API: obtain WebSockets through
   instea of through Reel::Connection#request. Allows processing of
   throug other means than the built-in WebSocket support
   - Allow Reel to stop cleanly
   - Remove `on_error` callback system
   - Increase buffer size
   - Remove Reel::App (unmaintained, sorry)
   - Reel::CODENAME added (0.4.0 is "Garbo")
Please log in before posting. Registration is free and takes only a minute.
Existing account

NEW: Do you have a Google/GoogleMail, Yahoo or Facebook account? No registration required!
Log in with Google account | Log in with Yahoo account | Log in with Facebook account
No account? Register here.