TakeGate
Production-Ready Load Balancer & API Gateway
A high-performance load balancer and API gateway written in Python with async/await architecture. It supports TCP, UDP, HTTP, HTTPS, HTTP/2, and HTTP/3. You get advanced routing, smart caching, automated health checks, and full monitoring.
Load Balancing
High-Performance & Async Python
Core Features
Production-grade load balancing capabilities similar to AWS ALB and NLB.
Multi-Protocol Support
TCP, UDP, HTTP, HTTPS, HTTP/2, HTTP/3 protocols. HTTP/3 leverages QUIC for reduced latency and connection migration without head-of-line blocking.
Advanced Routing Engine
Path-based, host-based, header-based, and query parameter routing. OpenAPI 3.0+ specification import for automatic microservices route generation.
Blake2 Caching System
Multiple backend options (memory, Redis, disk, hybrid). TTL management, header variance handling, and automatic tier-based fallback mechanisms.
Protocol-Specific Health Checks
TCP connection verification, HTTP/HTTPS status code validation, UDP packet-based checking with configurable intervals and retry logic.
High-Performance Async
1,422 requests/second sustained throughput. Mean latency 28.37ms, P95 48.34ms, P99 56.05ms. 70-90% horizontal scalability efficiency.
Management & Observability
Web dashboard, REST API, CLI tools, Prometheus metrics export, Grafana integration, real-time traffic analytics, and sticky session support.
Advanced Capabilities
Enterprise-grade features comparable to AWS Application Load Balancer and Network Load Balancer.
Application Load Balancing
- ✓Layer 7 (Application) load balancing
- ✓Path-based, host-based, header-based routing
- ✓Query parameter-based routing rules
- ✓WebSocket support with persistent connections
- ✓HTTP method filtering and timeout management
- ✓Request/response modification capabilities
Network Load Balancing
- ✓Layer 4 (Transport) load balancing
- ✓Ultra-high performance: 1,422 requests/second
- ✓Mean latency: 28.37ms, P95: 48.34ms, P99: 56.05ms
- ✓TCP and UDP protocol support
- ✓Connection pooling and multiplexing
- ✓Round Robin, Least Connections, Weighted algorithms
Advanced Routing
- ✓OpenAPI 3.0+ specification import
- ✓Automatic route generation from API docs
- ✓Host-based routing for multi-tenant apps
- ✓Regex-based custom routing rules
- ✓Route-level controls and customization
- ✓Microservices architecture support
Caching & Performance
- ✓Blake2 caching with multiple backends (memory, Redis, disk)
- ✓TTL management and header variance handling
- ✓Compression (gzip, brotli, deflate)
- ✓Keep-alive connection management
- ✓Connection pooling optimization
- ✓Automatic tier-based fallback mechanisms
SSL/TLS & Security
- ✓SSL termination (edge, bridge, passthrough modes)
- ✓Certificate management and renewal
- ✓Per-route and global rate limiting
- ✓Configurable burst thresholds
- ✓DDoS protection capabilities
- ✓Header manipulation and security rules
Monitoring & Management
- ✓Real-time metrics and Prometheus export
- ✓Modern web dashboard at port 8000
- ✓Traffic analytics and performance visibility
- ✓REST API for programmatic management
- ✓Health status monitoring with custom checks
- ✓Grafana dashboard integration support
Open Source & Production Ready
PyLoadBalancer is a fully open-source load balancer built with Python's async/await architecture, designed for production deployments. It gives you the freedom of open source with enterprise-grade performance, similar to AWS load balancing services.
Get Started with TakeGate
Use TakeGate to run your API gateway and load balancing infrastructure. It installs via pipx, pip, or pre-built frozen executables. It includes a web dashboard, REST API, and CLI management tools.
Installation Options: Package installation (pipx/pip), Frozen Linux executables (~74MB), Docker integration daemon (~66MB), or Systemd service integration with automatic post-install setup.
Check out the comprehensive README and documentation on our GitLab repository.
