lph-11/odin-http/comparisons/empty-ok-all/README.md

22 lines
1.5 KiB
Markdown
Raw Permalink Normal View History

2025-03-13 18:14:21 +13:00
# Comparison - Empty OK All
This comparison measures raw IO rate, the server needs to respond to requests on port :8080 with 200 OK.
Of course this is not a full picture but you can get an idea of performance.
## Results
Taken on Pop!_OS Linux using a AMD Ryzen 7 5800X 8-core processor.
Load is created using [Bombardier](https://github.com/codesenberg/bombardier) set to 250 connections and 10.000.000 requests.
Bombardier command used: `bombardier -c 250 -n 10000000 http://localhost:8080`
| Language/framework | Command | Requests per second | Total time | Avg response time | Throughput |
|--------------------|-----------------------------------------------------------|---------------------|------------|-------------------|------------|
| Rust Actix 4.2 | `cargo build --release` (this installs 256 dependencies!) | 712k | 14s | 347us | 120.8MB/s |
| Odin-HTTP dev | `odin build . -o:speed -disable-assert -no-bounds-check` | 637k | 15s | 340us | 105.2MB/s |
| Go net/http 1.21 | `go build main.go` | 598k | 16s | 417us | 77.98MB/s |
| Bun.serve 1.1 | `NODE_ENV=production bun run index.ts` | 302k | 33s | 827us | 39.43MB/s |
| Node http 20.5 | `NODE_ENV=production node app.js` | 65k | 2m35s | 3.88ms | 12.90MB/s |