RFC-029: Load Testing Framework Evaluation and Strategy
Summary
Evaluation of Go load testing frameworks for Prism data access gateway. Analyzes custom tool (prism-loadtest) vs best-of-breed frameworks (ghz, k6, vegeta, fortio) and proposes a two-tier testing strategy: custom tool for pattern-level load testing + ghz for end-to-end gRPC integration testing.
Recommendation: Keep custom prism-loadtest tool and add ghz for gRPC integration testing.
Key Finding: Prism needs two types of load testing:
- Pattern-level: Tests pattern logic directly (current custom tool)
- Integration-level: Tests through Rust proxy via gRPC (needs ghz)
Motivation
Problem
Current load testing tool (cmd/prism-loadtest) is custom-built:
- ✅ Production-ready (validated by MEMO-010)
- ✅ Direct Pattern SDK integration
- ✅ Custom metrics collection
- ❌ Tests patterns directly (not through proxy)
- ❌ No gRPC integration testing