Go banking API under contest constraints
Less is More. Except Error Handling.
A compact Go implementation of Rinha de Backend 2024/Q1, tuned for concurrent banking transactions with chi, pgx, PostgreSQL stored procedures, and NGINX load balancing.
- Go 1.25
- chi/v5
- pgx/v5
- PostgreSQL
- NGINX
Performance envelope
The constraint is the architecture.
The implementation is intentionally small: two Go API instances, one NGINX balancer, and one PostgreSQL database sharing the challenge’s total CPU and memory budget.
- 47k+ target valid requests
- 1.5 max CPU cores total
- 550 max memory in MB
- NGINX least_conn load balancer on :9999
- API x2 two Go/chi instances behind the proxy
- PostgreSQL stored procedures keep balance updates atomic
- k6 archived CI stress-test reports
Benchmark evidence
Stress-test results stay attached to reports.
The headline numbers are treated as evidence, not ornament. Use the archived reports and CI workflow to inspect each run instead of trusting a static badge.
- 47k+ target valid requests challenge scoring target
- <50ms P95 latency latest published target
- 99.9% success rate expected valid-run floor
Report archive
Recent proof artifacts
- Latest archived run 2026-04-01 19:13 · k6 stress report
- Previous run 2026-04-01 18:56 · k6 stress report
- Recent baseline 2026-04-01 16:34 · k6 stress report
- 2026-04-01 19:13
- 2026-04-01 18:56
- 2026-04-01 16:34
- 2026-04-01 07:40
- 2026-04-01 07:26
- 2026-04-01 07:07
34 stress test runs archived · View all reports