Haribon v1.2.0
Haribon Release Notes
Version 1.2.0 — Health Checks and Safe Reverse Proxy Improvements
Haribon v1.2.0 introduces a major stability upgrade with active health checking, safer reverse proxy behavior, and improved request handling reliability while maintaining the lightweight round-robin architecture.
Improvements
Active Backend Health Checks
Haribon now continuously monitors backend availability using periodic HTTP health checks.
- Backends are marked healthy only if they respond with status codes
200–399 - Unreachable or failing backends are automatically excluded from routing
This improves uptime and prevents routing traffic to broken services.
Smart Load Balancing with Health Awareness
Round-robin selection now considers backend health status.
Only healthy backends are selected for request routing, improving reliability under partial system failure.
Safer Reverse Proxy Handling
Request forwarding has been improved to reduce protocol-level issues:
- Proper context timeout handling per request
- Safe header forwarding from client to backend
- Protection against invalid request construction
Hop-by-Hop Header Protection
Response headers are now filtered to avoid unsafe forwarding:
Ignored headers include:
- Content-Length
- Transfer-Encoding
- Connection
This prevents HTTP response corruption and fixes issues like ERR_CONTENT_LENGTH_MISMATCH.
Improved Concurrency Handling
Health checks now run concurrently per backend with controlled timeout handling, improving responsiveness without blocking the main request flow.
Backend Failure Auto-Recovery
If a backend temporarily fails:
- It is automatically marked unhealthy
- It is retried during future health check cycles
This enables automatic recovery without manual intervention.
Core Features Retained
- Round robin load balancing
- Reverse proxy request forwarding
- YAML configuration support
- Environment variable overrides
- Lightweight Go binary
- Concurrent request handling
- Optional logging support
- Configurable request timeout
Summary
Haribon v1.2.0 significantly improves reliability and production readiness by introducing active health checks and safer HTTP proxy behavior, ensuring stable traffic routing even under backend failures.