ruby 1.9.2 + async_sinatra + thin thin start
ab -n 10000 -c 100 http://localhost:3000/
-> 49ms / request
node server.js
ab -n 10000 -c 100 http://localhost:3000/
-> 20ms / request
#!/usr/bin/env | |
require 'sinatra/async' | |
class AsyncTest < Sinatra::Base | |
register Sinatra::Async | |
aget '/' do | |
body "hello async" | |
end | |
end | |
run AsyncTest.new |
// Load the http module to create an http server. | |
var http = require('http'); | |
// Configure our HTTP server to respond with Hello World to all requests. | |
var server = http.createServer(function (request, response) { | |
response.writeHead(200, {"Content-Type": "text/plain"}); | |
response.end("Hello World\n"); | |
}); | |
// Listen on port 8000, IP defaults to 127.0.0.1 | |
server.listen(3000); | |
// Put a friendly message on the terminal | |
console.log("Server running at http://127.0.0.1:8000/"); |
feel free to fork :)
With ruby 1.9.3 I got about 98ms with ruby and 21ms with node 0.6.18
Or you could go the other way and benchmark a straight Rack "Hello World" application.