_API GATEWAY [1.8.2]
ARCHIVEDLIGHTWEIGHT REVERSE PROXY AND API GATEWAY WITH RATE LIMITING, JWT AUTHENTICATION, REQUEST ROUTING, AND OBSERVABILITY BUILT FOR MICROSERVICES ARCHITECTURES.
STACK: rust, nginx, prometheus, grafana DATE: 2022.03.05
Overview
A custom API gateway built to replace an aging NGINX configuration with a more programmable and observable solution. Handles authentication, rate limiting, and request routing for a microservices architecture serving 50M+ requests per day.
Technical Details
Built in Rust for zero-overhead performance. Processes requests in under 1ms at the 99th percentile.
Features
- JWT and API key authentication
- Configurable rate limiting per consumer/endpoint
- Request/response transformation
- Circuit breaker pattern implementation
- Distributed tracing with OpenTelemetry
- Real-time metrics dashboard
Configuration
[gateway]
port = 8080
workers = 16
[[routes]]
path = "/api/v1/users"
upstream = "http://user-service:3000"
auth = "jwt"
rate_limit = "100/min"
Status
Archived after migrating to a managed API gateway solution. The Rust performance patterns developed here were documented and shared with the broader team.