How is my single-threaded Rails app handling concurrent requests? How is my single-threaded Rails app handling concurrent requests? heroku heroku

How is my single-threaded Rails app handling concurrent requests?


Thin is built on top of EventMachine, which provides event-based IO.

This means that Thin does async receiving of your POST request, while serving GET requests in the meanwhile. When POST data is uploaded, Thin then goes on to pass it to Rails (where it is processed synchronously and blocks other requests until finished).