A lightweight, high-performance HTTP/HTTPS load balancer written in Go.
- 🔄 Multiple load balancing strategies (round-robin, least-connections)
- 💚 Active health checking
- 🔒 TLS/SSL termination
- 📊 Built-in metrics and monitoring
- 🎯 Path-based and host-based routing
- 🍪 Sticky sessions support
- 🚦 Rate limiting
- 📝 Comprehensive logging
curl -fsSL https://raw.githubusercontent.com/edwardoboh/melinolb/main/install.sh | shDownload the latest release for your platform from releases page:
# Linux/macOS
wget https://github.com/edwardoboh/melinolb/releases/download/v1.0.0/melinolb_1.0.0_linux_amd64.tar.gz
tar -xzf melinolb_1.0.0_linux_amd64.tar.gz
sudo mv melinolb /usr/local/bin/
# Verify installation
melinolb --versiongo install github.com/edwardoboh/melinolb/cmd@latestCreate a config.yaml:
service:
name: "my-proxy"
listen: "0.0.0.0:8080"
routes:
- id: "api"
match:
path: "/api"
backend:
- "http://localhost:3001"
- "http://localhost:3002"
lb: "round-robin"Run the load balancer:
melinolb config.yaml- Configuration Reference - Complete configuration guide
- Getting Started - Step-by-step tutorial
- Load Balancing Strategies - Algorithm details
- Features Guide - Health checks, rate limiting, sticky sessions
- Operations Guide - Monitoring and troubleshooting
See the examples/ directory for common configuration patterns:
We welcome contributions! Here's how you can help:
- Check existing issues before creating a new one
- Provide clear reproduction steps
- Include configuration files (sanitize sensitive data)
- Share error logs and version information
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Test thoroughly with various configurations
- Commit with clear messages (
git commit -m 'feat: add amazing feature') - Push to your branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow existing code style and conventions
- Add tests for new features
- Update documentation for configuration changes
- Add examples for new functionality
- 🐛 Bug fixes and testing
- 📝 Documentation improvements
- 🌟 New load balancing strategies
- 🔧 Performance optimizations
- 🧪 Test coverage