Skip to content

Instantly share code, notes, and snippets.

@nono
Created April 2, 2011 13:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nono/899511 to your computer and use it in GitHub Desktop.
Save nono/899511 to your computer and use it in GitHub Desktop.
Username = <%= @var %>
Username = <%= @var %>
require 'rubygems'
require 'sinatra'
require 'erubis'
require 'haml'
require 'slim'
# first ab line development mode
# second ab line production mode
# ab -c 10 -n 1000 127.0.0.1:4567/slim/niko
# Requests per second: 326.96 [#/sec] (mean)
# Requests per second: 854.07 [#/sec] (mean)
get '/slim/:username' do
@var = "Hello #{params[:username]}"
slim :slim
end
# ab -c 10 -n 1000 127.0.0.1:4567/haml/niko
# Requests per second: 374.49 [#/sec] (mean)
# Requests per second: 630.50 [#/sec] (mean)
get '/haml/:username' do
@var = "Hello #{params[:username]}"
haml :haml
end
# ab -c 10 -n 1000 127.0.0.1:4567/erb_template/niko
# Requests per second: 521.16 [#/sec] (mean)
# Requests per second: 644.85 [#/sec] (mean)
get '/erb_template/:username' do
@var = "Hello #{params[:username]}"
erb :erb
end
# ab -c 10 -n 1000 127.0.0.1:4567/erubis_template/niko
# Requests per second: 529.40 [#/sec] (mean)
# Requests per second: 673.64 [#/sec] (mean)
get '/erubis_template/:username' do
@var = "Hello #{params[:username]}"
erubis :erb
end
# ab -c 10 -n 1000 127.0.0.1:4567/erb_inline_template/niko
# Requests per second: 544.89 [#/sec] (mean)
# Requests per second: 707.02 [#/sec] (mean)
get '/erb_inline_template/:username' do
@var = "Hello #{params[:username]}"
erb :inline_template
end
# ab -c 10 -n 1000 127.0.0.1:4567/subst/niko
# Requests per second: 825.33 [#/sec] (mean)
# Requests per second: 829.96 [#/sec] (mean)
get '/subst/:username' do
f = File.open("template.tpl")
t = f.read
res = t.sub("%content%","Hello #{params[:username]}");
f.close
return res
end
# ab -c 10 -n 1000 127.0.0.1:4567/string/niko
# Requests per second: 913.88 [#/sec] (mean)
# Requests per second: 951.90 [#/sec] (mean)
get '/string/:username' do
"Hello #{params[:username]}"
end
# ab -c 10 -n 1000 127.0.0.1:4567/eval/niko
get '/eval/:username' do
@var = "Hello #{params[:username]}"
eval File.read("eval.rb")
end
__END__
@@ inline_template
Username = <%= @var %>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment