I'm developing a web service which requires the ability to process a lot of users at once. A Co-worker and I got into a discussion about using Boost.ASIO which is a C++ non-blocking asynchronous framework, but I was wondering what the advantage of Boost.ASIO is over using Tornado (http://developers.facebook.com/blog/post/301/), using Node.js, or Goliath with Ruby (http://postrank-labs.github.com/goliath/)? Also how does Boost.ASIO compare with running Apache Tomcat 7 which implements async processing?