Thousands of Threads and Blocking I/O (2008) [pdf]
mailinator.com
mailinator.com
The async style also allows for faster code in fairly typical web server cases. Consider a request that needs to do an HTTP lookup and 3 database calls. In a blocking I/O case, this needs a memory heavy thread and each I/O operation must be done sequentially even if we need the result from all 4 operations to give the result. With async I/O, we can send off all 4 operations without requiring the memory usage of a thread, and all 4 operations complete much faster as they run in parallel.