Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 15 additions & 20 deletions frameworks/rack-iodine/app.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,30 +7,25 @@
class App
CONTENT_TYPE = 'Content-Type'
PLAINTEXT_TYPE = 'text/plain'
KNOWN = %w[GET POST PUT DELETE PATCH HEAD OPTIONS TRACE CONNECT].freeze

def call(env)
if KNOWN.include?(env['REQUEST_METHOD'])
case env['PATH_INFO']
when '/pipeline'
render_plain 'ok'
when '/baseline11'
params = Rack::Utils.parse_query(env['QUERY_STRING'])
total = params['a'].to_i + params['b'].to_i
if env['REQUEST_METHOD'] == 'POST'
body = env["rack.input"]&.read
total += body.to_i
end
render_plain total.to_s
when '/baseline2'
params = Rack::Utils.parse_query(env['QUERY_STRING'])
total = params['a'].to_i + params['b'].to_i
render_plain total.to_s
else
[404, {CONTENT_TYPE => PLAINTEXT_TYPE}, ['Not found!']]
case env['PATH_INFO']
when '/pipeline'
render_plain 'ok'
when '/baseline11'
params = Rack::Utils.parse_query(env['QUERY_STRING'])
total = params['a'].to_i + params['b'].to_i
if env['REQUEST_METHOD'] == 'POST'
body = env["rack.input"]&.read
total += body.to_i
end
render_plain total.to_s
when '/baseline2'
params = Rack::Utils.parse_query(env['QUERY_STRING'])
total = params['a'].to_i + params['b'].to_i
render_plain total.to_s
else
[405, {CONTENT_TYPE => PLAINTEXT_TYPE}, ['Method Not Allowed']]
[404, {CONTENT_TYPE => PLAINTEXT_TYPE}, ['Not found!']]
end
end

Expand Down
16 changes: 8 additions & 8 deletions site/data/baseline-4096.json
Original file line number Diff line number Diff line change
Expand Up @@ -869,19 +869,19 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 65019,
"avg_latency": "60.33ms",
"p99_latency": "273.00ms",
"cpu": "4750.0%",
"memory": "5.1GiB",
"rps": 65472,
"avg_latency": "59.13ms",
"p99_latency": "237.40ms",
"cpu": "4803.4%",
"memory": "5.3GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
"bandwidth": "7.62MB/s",
"input_bw": "5.02MB/s",
"bandwidth": "7.68MB/s",
"input_bw": "5.06MB/s",
"reconnects": 0,
"status_2xx": 325096,
"status_2xx": 327361,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
16 changes: 8 additions & 8 deletions site/data/baseline-512.json
Original file line number Diff line number Diff line change
Expand Up @@ -869,19 +869,19 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 717216,
"avg_latency": "714us",
"p99_latency": "25.30ms",
"cpu": "5397.0%",
"memory": "4.8GiB",
"rps": 730114,
"avg_latency": "702us",
"p99_latency": "25.80ms",
"cpu": "5395.2%",
"memory": "4.9GiB",
"connections": 512,
"threads": 64,
"duration": "5s",
"pipeline": 1,
"bandwidth": "84.10MB/s",
"input_bw": "55.40MB/s",
"bandwidth": "85.62MB/s",
"input_bw": "56.40MB/s",
"reconnects": 0,
"status_2xx": 3586081,
"status_2xx": 3650574,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
12 changes: 6 additions & 6 deletions site/data/limited-conn-4096.json
Original file line number Diff line number Diff line change
Expand Up @@ -869,19 +869,19 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 59214,
"avg_latency": "66.81ms",
"p99_latency": "256.90ms",
"cpu": "4710.9%",
"rps": 59205,
"avg_latency": "66.55ms",
"p99_latency": "266.30ms",
"cpu": "4693.3%",
"memory": "5.2GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
"bandwidth": "6.94MB/s",
"input_bw": "4.57MB/s",
"reconnects": 27794,
"status_2xx": 296073,
"reconnects": 27812,
"status_2xx": 296026,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
16 changes: 8 additions & 8 deletions site/data/limited-conn-512.json
Original file line number Diff line number Diff line change
Expand Up @@ -869,19 +869,19 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 59864,
"avg_latency": "8.56ms",
"p99_latency": "79.90ms",
"cpu": "4821.0%",
"rps": 60162,
"avg_latency": "8.55ms",
"p99_latency": "71.00ms",
"cpu": "4844.6%",
"memory": "5.1GiB",
"connections": 512,
"threads": 64,
"duration": "5s",
"pipeline": 1,
"bandwidth": "7.02MB/s",
"input_bw": "4.62MB/s",
"reconnects": 29706,
"status_2xx": 299323,
"bandwidth": "7.05MB/s",
"input_bw": "4.65MB/s",
"reconnects": 29869,
"status_2xx": 300814,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
12 changes: 6 additions & 6 deletions site/data/pipelined-4096.json
Original file line number Diff line number Diff line change
Expand Up @@ -836,18 +836,18 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 1976042,
"avg_latency": "32.22ms",
"p99_latency": "86.30ms",
"cpu": "6574.9%",
"rps": 2054716,
"avg_latency": "30.96ms",
"p99_latency": "94.70ms",
"cpu": "6595.0%",
"memory": "4.6GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 16,
"bandwidth": "231.71MB/s",
"bandwidth": "240.95MB/s",
"reconnects": 0,
"status_2xx": 9880212,
"status_2xx": 10273582,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
12 changes: 6 additions & 6 deletions site/data/pipelined-512.json
Original file line number Diff line number Diff line change
Expand Up @@ -836,18 +836,18 @@
{
"framework": "rack-iodine",
"language": "Ruby",
"rps": 2012637,
"avg_latency": "4.07ms",
"p99_latency": "15.70ms",
"cpu": "6587.4%",
"rps": 2037298,
"avg_latency": "4.02ms",
"p99_latency": "15.20ms",
"cpu": "6652.7%",
"memory": "4.4GiB",
"connections": 512,
"threads": 64,
"duration": "5s",
"pipeline": 16,
"bandwidth": "236.00MB/s",
"bandwidth": "238.90MB/s",
"reconnects": 0,
"status_2xx": 10063186,
"status_2xx": 10186490,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
Expand Down
70 changes: 35 additions & 35 deletions site/static/logs/baseline/4096/rack-iodine.log
Original file line number Diff line number Diff line change
Expand Up @@ -20,22 +20,22 @@ INFO: 18 is running.
INFO: 22 is running.
INFO: 26 is running.
INFO: 30 is running.
INFO: 34 is running.
INFO: 39 is running.
INFO: 43 is running.
INFO: 49 is running.
INFO: 54 is running.
INFO: 59 is running.
INFO: 64 is running.
INFO: 35 is running.
INFO: 40 is running.
INFO: 45 is running.
INFO: 50 is running.
INFO: 55 is running.
INFO: 60 is running.
INFO: 65 is running.
INFO: 70 is running.
INFO: 75 is running.
INFO: 80 is running.
INFO: 85 is running.
INFO: 90 is running.
INFO: 96 is running.
INFO: 101 is running.
INFO: 106 is running.
INFO: 111 is running.
INFO: 95 is running.
INFO: 100 is running.
INFO: 105 is running.
INFO: 110 is running.
INFO: 116 is running.
INFO: 121 is running.
INFO: 126 is running.
Expand All @@ -46,19 +46,19 @@ INFO: 146 is running.
INFO: 151 is running.
INFO: 156 is running.
INFO: 161 is running.
INFO: 167 is running.
INFO: 166 is running.
INFO: 171 is running.
INFO: 177 is running.
INFO: 182 is running.
INFO: 187 is running.
INFO: 192 is running.
INFO: 175 is running.
INFO: 181 is running.
INFO: 186 is running.
INFO: 191 is running.
INFO: 197 is running.
INFO: 202 is running.
INFO: 207 is running.
INFO: 212 is running.
INFO: 217 is running.
INFO: 222 is running.
INFO: 227 is running.
INFO: 211 is running.
INFO: 216 is running.
INFO: 221 is running.
INFO: 226 is running.
INFO: 232 is running.
INFO: 237 is running.
INFO: 242 is running.
Expand All @@ -75,29 +75,29 @@ INFO: 295 is running.
INFO: 299 is running.
INFO: 303 is running.
INFO: 307 is running.
INFO: 313 is running.
INFO: 317 is running.
INFO: 322 is running.
INFO: 312 is running.
INFO: 318 is running.
INFO: 323 is running.
INFO: 327 is running.
INFO: 332 is running.
INFO: 337 is running.
INFO: 343 is running.
INFO: 333 is running.
INFO: 338 is running.
INFO: 342 is running.
INFO: 348 is running.
INFO: 352 is running.
INFO: 353 is running.
INFO: 358 is running.
INFO: 362 is running.
INFO: 367 is running.
INFO: 372 is running.
INFO: 368 is running.
INFO: 373 is running.
INFO: 378 is running.
INFO: 383 is running.
INFO: 388 is running.
INFO: 393 is running.
INFO: 398 is running.
INFO: 403 is running.
INFO: 408 is running.
INFO: 413 is running.
INFO: 418 is running.
INFO: 423 is running.
INFO: 412 is running.
INFO: 417 is running.
INFO: 422 is running.
INFO: 428 is running.
INFO: 433 is running.
INFO: 438 is running.
Expand Down Expand Up @@ -133,11 +133,11 @@ INFO: 583 is running.
INFO: 588 is running.
INFO: 593 is running.
INFO: 598 is running.
INFO: 603 is running.
INFO: 604 is running.
INFO: 610 is running.
INFO: 614 is running.
INFO: 619 is running.
INFO: 623 is running.
INFO: 628 is running.
INFO: 634 is running.
INFO: 633 is running.
INFO: 638 is running.
INFO: 614 is running.
Loading