Date | Commit message (Collapse) |
|
Fortunately it's easy here.
|
|
It'll make development of future ev_core-derived things
easier, hopefully.
|
|
Since the HTTP parser is frozen during app dispatch, there's
no point in checking for HTTP keepalive sooner. Of course we
check G.alive as late as possible since we could've received a
:QUIT signal while app.call was running.
|
|
It turns out neither the EventMachine and Rev classes
checked for master death in its heartbeat mechanism.
Since we managed to forget the same thing twice, we
now have a test case for it and also centralized the
code to remove duplication.
|
|
Avoid slurping in case we're a fast backend writing to a slow
client. This should prevent our memory usage from exploding
when clients are reading slowly.
|
|
ref: http://github.com/raggi/async_sinatra
|
|
It shouldn't be needed, really, favor simpler code
here until proven otherwise.
|
|
This is should be compatible with how the Thin webserver
provides async callback support.
See http://github.com/raggi/async_sinatra for the details
|
|
The EM::attach/EM::watch API changed incompatibly
in 0.12.10
|
|
This means Rainbows::DevFdBody async responses and large
file streaming without slurping.
This is only with eventmachine 0.12.8, it looks like 0.12.10
changes the attach/watch API...
|
|
log reopens, graceful shutdown, HTTP error responses
should all be working now.
|
|
EventMachine and Rev models seem to be able to share a lot of
common code, so lets share. We may support Packet in the
future, too, and end up with a similar programming model there
as well.
|
|
Working for simple GET requests, completely untested otherwise
and most definitely not able to handle async/Comet-style
requests yet, either. No tests for this are enabled.
This could share a lot of code with the existing Rev model.
|