Laravel Cloud Benchmarks
Performance comparison between Laravel Vapor and Laravel Cloud.
Methodology
Tool: oha - HTTP load generator
Config:
- 50 requests, 5 concurrent
- Random domains via
--rand-regex-urlto bypass rate limiting - Tip: escape
?as\?(regex operator)
Example:
oha -n 50 -c 5 --rand-regex-url \
'https://staging-farfalla-https-guard.publica.la/api/v1/caddy-check-BYZJVBNM8WUVXRDZ\?domain=bench-[a-z][a-z][a-z][a-z][a-z][a-z]-farfalla.publica.la'
Vapor vs Cloud (Final)
Project: farfalla-https-guard (staging)
| Metric | Vapor | Cloud | Change |
|---|---|---|---|
| Avg Response | 513ms | 382ms | -25% |
| P50 Response | 563ms | 368ms | -34% |
| P95 Response | 654ms | 541ms | -17% |
| P99 Response | 723ms | 602ms | -16% |
| Requests/sec | 9.2 | 12.8 | +38% |
Cloud Optimization Experiments
| Optimization | Avg | P99 | Notes |
|---|---|---|---|
| Baseline | 373ms | 688ms | Default Cloud config |
| Faster CPU | 373ms | 496ms | P99 -27% |
| Persistent DB | 393ms | 529ms | P99 -23% |
| artisan optimize | 389ms | 531ms | P99 -22%, caches config/routes/views |
| Final | 382ms | 602ms | Custom domain, all optimizations |
Raw Data
Benchmark scripts and JSON files in _benchmark_data/:
vapor-staging.json,vapor-rand.json- Vapor baselinecloud-staging.json,cloud-baseline.json- Cloud initialcloud-faster-cpu.json,cloud-faster-cpu-warm.jsoncloud-persistent-db.json,cloud-persistent-db-warm.jsoncloud-artisan-optimize.json,cloud-artisan-optimize-warm.jsoncloud-final.json- Final optimized config
Comparison reports can be regenerated with _benchmark_data/compare-benchmarks.sh