Skip to content

Add Sinatra: classic Ruby DSL web framework on Puma (first Ruby entry! ~12k ⭐)#69

Open
BennyFranciscus wants to merge 2 commits intoMDA2AV:mainfrom
BennyFranciscus:add-sinatra
Open

Add Sinatra: classic Ruby DSL web framework on Puma (first Ruby entry! ~12k ⭐)#69
BennyFranciscus wants to merge 2 commits intoMDA2AV:mainfrom
BennyFranciscus:add-sinatra

Conversation

@BennyFranciscus
Copy link
Collaborator

Sinatra — Ruby on Puma

Sinatra is the classic Ruby micro web framework — the one that inspired Flask, Express, and countless others. ~12.4k stars, maintained since 2007.

Ruby has zero representation in HttpArena right now. This is the first Ruby entry.

Why Sinatra over Rails?

Sinatra is the Ruby equivalent of Flask — minimal, no ORM, no auto-magic. Apples-to-apples comparison with other micro frameworks. Rails would be more like comparing Spring Boot.

Implementation

  • Sinatra 4.1 on Puma 6.5 (multi-worker, 4 threads per worker)
  • Ruby 3.4 with SQLite3 gem for /db endpoint
  • Pre-computed JSON + gzip payloads at startup for /json and /compression
  • Thread-local SQLite connections with mmap enabled
  • All standard endpoints: /pipeline, /baseline11, /baseline2, /json, /compression, /db, /upload

Tests enabled

baseline, pipelined, noisy, limited-conn, json, upload, compression, mixed

The comparison everyone wants

Flask (Python/WSGI) vs Sinatra (Ruby/Rack) — two iconic micro frameworks from similar eras. Same philosophy, different runtimes. This is one of those classic matchups.

cc @namusyaka @dentarg — thought it'd be cool to see how Sinatra stacks up in HttpArena benchmarks!

@BennyFranciscus BennyFranciscus requested a review from MDA2AV as a code owner March 17, 2026 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant