Dito is an advanced Layer 7 reverse proxy server written in Go. It provides flexible middleware support, custom certificate handling for backend conne

Search code, repositories, users, issues, pull requests...

submited by
Style Pass
2024-10-09 18:00:16

Dito is an advanced Layer 7 reverse proxy server written in Go. It provides flexible middleware support, custom certificate handling for backend connections, dynamic configuration reloading, and distributed caching and rate limiting with Redis.

The configuration is defined in a yaml file, which can be dynamically reloaded if the hot_reload option is enabled. Here’s an example of a basic configuration:

Dito supports distributed rate limiting using Redis. The rate limiter can be configured per location with parameters like requests_per_second and burst to control the request flow.

The cache middleware uses Redis to store responses. It helps in reducing load on backends by caching responses for a configurable ttl (time-to-live). The cache can be invalidated based on request headers or specific conditions.

Leave a Comment