Linux cloth 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009
i686 GNU/Linux
I followed the instructions on tornado's website and used their script
import tornado.httpserver
import tornado.ioloop
import tornado.web
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")
application = tornado.web.Application([
(r"/", MainHandler),
])
if __name__ == "__main__":
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(8888)
tornado.ioloop.IOLoop.instance().start()
Unfortunately when I started Tornado it said it couldn't use the epoll() backend and used select() instead. This negatively affects the results, so take the benchmark with a grain of salt.
tornado node thin 30859 40022 40569 tornado Min. 1st Qu. Median Mean 3rd Qu. Max. 14.00 28.00 28.00 28.58 28.00 69.00 node Min. 1st Qu. Median Mean 3rd Qu. Max. 1.00 12.00 20.00 21.91 29.00 176.00 thin Min. 1st Qu. Median Mean 3rd Qu. Max. 10.00 17.00 19.00 21.59 21.00 191.00
tornado node thin
17643 24348 22178
tornado
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 1.000 1.000 1.028 1.000 12.000
node
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.0000 0.0000 1.0000 0.7182 1.0000 220.0000
thin
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 1.000 1.000 1.124 1.000 548.000
(didn't bother to make graphs)
tornado node thin
31825 39732 38424
tornado
Min. 1st Qu. Median Mean 3rd Qu. Max.
99.0 200.0 244.0 280.2 276.0 6362.0
node
Min. 1st Qu. Median Mean 3rd Qu. Max.
9.0 59.0 100.0 219.4 142.0 12200.0
thin
Min. 1st Qu. Median Mean 3rd Qu. Max.
63.0 83.0 86.0 177.1 91.0 24080.0