Elvy is a three layered Loadbalancer, with multiple features such as, Dyanamic server, Multiple Algo
275
Introduction
Elvy is a Layer 7 load balancer designed to handle advanced routing, rate limiting, and dynamic configuration. It supports various load balancing algorithms and features for managing server traffic. Features
Rate Limiting: Control the number of requests per minute to each backend.
Dynamic Configuration: Add or remove backends without restarting the load balancer.
Load Balancing Algorithms: Supports Round Robin, Least Connections, and IP Hash algorithms.
Configuration
Elvy is configured using a config.yaml file. This file specifies the load balancer's behavior, including backend servers, rate limiting settings, and more.
Example config.yaml
type: round_robin # Load balancing algorithm (e.g., round_robin, least_conn, ip_hash)
port: 8080 # Port the load balancer will listen on
sticky_session: false # Enable or disable sticky sessions
backends: # List of backend servers
- address: http://localhost:8081
alive: true
rate_limit:
enabled: true
requests_per_minute: 2
- address: http://localhost:8082
alive: true
rate_limit:
enabled: true
requests_per_minute: 2
Configuration Options
type: string - Load balancing algorithm. Options: round_robin, least_conn, ip_hash.
port: string - Port number on which the load balancer listens.
sticky_session: boolean - Enable sticky sessions to route requests from the same client to the same server.
backends: array - List of backend servers.
address: string - Address of the backend server.
alive: boolean - Whether the server is considered alive.
rate_limit: object (optional) - Rate limiting configuration for the server.
enabled: boolean - Enable or disable rate limiting.
requests_per_minute: integer - Maximum number of requests per minute.
Content type
Image
Digest
sha256:9f9d06771…
Size
32.4 MB
Last updated
about 2 years ago
docker pull sparsh02/elvy