A few places I could see using the reactor pattern over the &quot;concurrency unit (i.e. green process, thread, co-routine) per connection context&quot; is in very high performance scenarios and where callback chains are very short.<p>Think proxies (haproxy), routers, forwarders, web servers (nginx) etc. Where memory context per connection should be minimal, and everything should be as close as possible to the select&#x2F;poll&#x2F;epoll loop.<p>Funny enough, this also includes demos, quick example scripts, and benchmarks. I wonder if that what hooked most people to the reactor pattern -- small examples in Twisted, Node, etc, look pretty easy and simple. But when you start adding business logic and callback chains evolve into callback&#x2F;errback trees 10 levels deeps when things get very scary.