diff options
author | Eric Wong <normalperson@yhbt.net> | 2009-03-22 20:58:11 -0700 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2009-03-22 20:58:11 -0700 |
commit | f4503b0eb9dd73296988021f355f3d28959975e5 (patch) | |
tree | 5be11934e0ac81d2331d4d5b60693ae77dc94d91 /test/benchmark/response.rb | |
parent | 78668173ab0e78c5c94fe23b916a81822c24bf9c (diff) | |
parent | 018f827ebdc1668d2262ef1337386f896379e0f6 (diff) | |
download | unicorn-f4503b0eb9dd73296988021f355f3d28959975e5.tar.gz |
* commit 'origin/benchmark': benchmark: header values must be strings All new benchmarks, old ones removed
Diffstat (limited to 'test/benchmark/response.rb')
-rw-r--r-- | test/benchmark/response.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/benchmark/response.rb b/test/benchmark/response.rb new file mode 100644 index 0000000..0ff0ac2 --- /dev/null +++ b/test/benchmark/response.rb @@ -0,0 +1,29 @@ +require 'benchmark' +require 'unicorn' + +class NullWriter + def syswrite(buf); buf.size; end + def close; end +end + +include Unicorn + +socket = NullWriter.new +bs = ENV['bs'] ? ENV['bs'].to_i : 4096 +count = ENV['count'] ? ENV['count'].to_i : 1 +slice = (' ' * bs).freeze +body = (1..count).map { slice }.freeze +hdr = { + 'Content-Length' => (bs * count).to_s.freeze, + 'Content-Type' => 'text/plain'.freeze +}.freeze +response = [ 200, hdr, body ].freeze + +nr = ENV['nr'] ? ENV['nr'].to_i : 100000 +Benchmark.bmbm do |x| + x.report do + for i in 1..nr + HttpResponse.write(socket.dup, response) + end + end +end |