Skip to content

Commit 6347ab8

Browse files
committed
chore: move "Benchmark" block to README.md
1 parent d5a2046 commit 6347ab8

4 files changed

Lines changed: 20 additions & 41 deletions

File tree

README.md

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,25 @@ If you want to ship a static SPA quickly in Docker without writing Nginx config,
1919

2020
## Benchmark Highlights
2121

22-
From [`docs/benchmarks.md`](docs/benchmarks.md):
23-
24-
- Startup readiness (100 startups): `1.358s` vs Nginx `1.514s` (`11.5%` faster)
25-
- Small-file throughput (0.5 KiB HTML): `80,497 req/s` vs `79,214 req/s`
26-
- Mid-size JS throughput (5 KiB): `66,126 req/s` vs `62,831 req/s` (`5.2%` faster)
27-
- Docker image size comparison in docs: `13.2 MiB` (`spa-to-http`) vs `142 MiB` (Nginx sample image)
28-
29-
See full comparison table and source methodology in [`docs/benchmarks.md`](docs/benchmarks.md).
22+
### spa-to-http vs Nginx
23+
24+
| | spa-to-http | Nginx |
25+
|---|---|---|
26+
| Zero-configuration | ✅ No config files, SPA serving works out of the box | ❌ Requires dedicated config file |
27+
| Config via env/CLI | ✅ Yes | ❌ No |
28+
| Docker image size | ✅ 7.54 MiB (v1.1.1) | ❌ 142 MiB (v1.23.1) |
29+
| Brotli out-of-the-box | ✅ Yes | ❌ Requires module |
30+
31+
Performance numbers and benchmark setup details are from:
32+
`https://devforth.io/blog/deploy-react-vue-angular-in-docker-simply-and-efficiently-using-spa-to-http-and-traefik/`
33+
34+
| | spa-to-http | Nginx |
35+
|---|---|---|
36+
| Average time from container start to HTTP port availability (100 startups) | ✅ 1.358 s (11.5% faster) | ❌ 1.514 s |
37+
| Requests-per-second on 0.5 KiB HTML file at localhost | ✅ 80497 (1.6% faster) | ❌ 79214 |
38+
| Transfer speed on 0.5 KiB HTML file at localhost | ❌ 74.16 MiB/sec | ✅ 75.09 MiB/sec (1.3% faster) |
39+
| Requests-per-second on 5 KiB JS file at localhost | ✅ 66126 (5.2% faster) | ❌ 62831 |
40+
| Transfer speed on 5 KiB HTML file at localhost | ✅ 301.32 MiB/sec (4.5% faster) | ❌ 288.4 |
3041

3142
## Get Started in 60 Seconds
3243

@@ -115,7 +126,6 @@ For full Docker Compose and Traefik examples, see [`docs/deployment.md`](docs/de
115126
| Full flag/env reference and examples | [`docs/configuration.md`](docs/configuration.md) |
116127
| Deployment behind Traefik / reverse proxy | [`docs/deployment.md`](docs/deployment.md) |
117128
| Internal package layout and request flow | [`docs/architecture.md`](docs/architecture.md) |
118-
| Detailed benchmark tables and source link | [`docs/benchmarks.md`](docs/benchmarks.md) |
119129

120130
## License
121131

docs/architecture.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[← Deployment](deployment.md) · [Development](development.md) · [Back to README](../README.md) · [Benchmarks →](benchmarks.md)
1+
[← Deployment](deployment.md) · [Development](development.md) · [Back to README](../README.md)
22

33
# Architecture
44

@@ -32,4 +32,3 @@
3232

3333
- [Configuration](configuration.md) — Environment variables and CLI flags
3434
- [Getting Started](getting-started.md) — Install, build, and run
35-
- [Benchmarks](benchmarks.md)`spa-to-http` vs Nginx

docs/benchmarks.md

Lines changed: 0 additions & 29 deletions
This file was deleted.

docs/deployment.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,3 @@ So either notation works in deployment config.
6666
- [Configuration](configuration.md) — Environment variables and CLI flags
6767
- [Getting Started](getting-started.md) — Install, build, and run
6868
- [Development](development.md) — Includes a local Traefik fixture for testing `/qwerty` base-path routing
69-
- [Benchmarks](benchmarks.md) — spa-to-http vs Nginx

0 commit comments

Comments
 (0)