Ruby web framework comparison: any two, head to head
rage is quicker than roda on 15 of the 19 profiles they both run, and behind on 4. On the HTTP/1.1 composite they score 253 and 226.
Pick any two of the 7 Ruby entries. Requests per second is the best of three runs and the delta is the first column against the second; every row is the same profile at the same connection count, on the same machine. What each profile measures.
| Profile | Conns | rage req/sec | roda req/sec | Delta | rage p99 | roda p99 |
|---|---|---|---|---|---|---|
| Baseline | 512 | 477,939 | 100,648 | +375% | 30.50ms | 83.10ms |
| Baseline | 4,096 | 57,975 | 49,154 | +18% | 171.80ms | 290.40ms |
| Pipelined | 512 | 977,544 | 718,707 | +36% | 107.90ms | 31.80ms |
| Pipelined | 4,096 | 928,352 | 697,544 | +33% | 168.30ms | 144.30ms |
| Short-lived | 512 | 53,484 | 28,599 | +87% | 65.30ms | 71.30ms |
| Short-lived | 4,096 | 51,448 | 28,814 | +79% | 331.20ms | 305.00ms |
| JSON | 4,096 | 388,272 | 249,577 | +56% | 45.40ms | 43.10ms |
| JSON Comp | 512 | 189,727 | 130,040 | +46% | 10.10ms | 13.60ms |
| JSON Comp | 4,096 | 179,420 | 141,482 | +27% | 50.20ms | 52.90ms |
| JSON Comp | 16,384 | 160,894 | 141,281 | +14% | 279.90ms | 149.00ms |
| Upload | 32 | 599 | 949 | -37% | 187.80ms | 130.70ms |
| Upload | 256 | 856 | 900 | -5% | 1.09s | 1.56s |
| Static | 1,024 | 992,019 | 141,669 | +600% | 1.48ms | 73.92ms |
| Static | 4,096 | 959,138 | 139,115 | +589% | 4.17ms | 245.00ms |
| Static | 6,800 | 928,646 | 138,957 | +568% | 6.96ms | 551.80ms |
| Async DB | 1,024 | 92,893 | 84,584 | +10% | 84.70ms | 273.60ms |
| CRUD | 4,096 | 52,002 | 61,151 | -15% | 1.60s | 83.40ms |
| API-4 | 256 | 13,999 | 13,645 | +3% | 266.00ms | 73.20ms |
| API-16 | 1,024 | 9,825 | 48,671 | -80% | 1.78s | 82.90ms |
Common comparisons
rage vs roda · rage vs sinatra · rage vs h2o-mruby · roda vs sinatra · roda vs h2o-mruby · sinatra vs h2o-mruby
Questions
Is rage faster than roda?
rage is quicker than roda on 15 of the 19 profiles they both run, and behind on 4. On the HTTP/1.1 composite they score 253 and 226. Both run on the same machine, in the same round, against the same profiles.
Is rage faster than sinatra?
rage is quicker than sinatra on 12 of the 19 profiles they both run, and behind on 7. On the HTTP/1.1 composite they score 253 and 194. Both run on the same machine, in the same round, against the same profiles.
Is rage faster than h2o-mruby?
rage is quicker than h2o-mruby on 8 of the 15 profiles they both run, and behind on 7. On the HTTP/1.1 composite they score 253 and 192. Both run on the same machine, in the same round, against the same profiles.
Is roda faster than sinatra?
roda is quicker than sinatra on 15 of the 23 profiles they both run, and behind on 7. On the HTTP/1.1 composite they score 226 and 194. Both run on the same machine, in the same round, against the same profiles.
Which Ruby framework is fastest overall?
rage holds the highest HTTP/1.1 composite of the Ruby entries, at 253. The composite is throughput over the whole suite; if a service is one shape of workload, compare that profile on its own in the table above, because the order changes.
Every Ruby entry
Results updated · Ruby composite ranking · Other languages · Open the leaderboard