|
Orbit Framework
An ultra-modern, asynchronous, cross-platform C++ Web Framework.
|
Distributed rate limiter middleware using Redis. More...
#include <DistributedRateLimiter.hpp>
Public Member Functions | |
| DistributedRateLimiter (const std::string &redis_host, int redis_port, size_t max_requests, std::chrono::seconds window) | |
| Constructs a new Distributed Rate Limiter. | |
| bool | operator() (http::HttpRequest &req, std::shared_ptr< http::ResponseWriter > writer) |
| Middleware execution operator. | |
Distributed rate limiter middleware using Redis.
| middleware::DistributedRateLimiter::DistributedRateLimiter | ( | const std::string & | redis_host, |
| int | redis_port, | ||
| size_t | max_requests, | ||
| std::chrono::seconds | window | ||
| ) |
Constructs a new Distributed Rate Limiter.
| redis_host | The Redis server host. |
| redis_port | The Redis server port. |
| max_requests | Maximum number of requests allowed in the time window. |
| window | The time window for rate limiting. |
| bool middleware::DistributedRateLimiter::operator() | ( | http::HttpRequest & | req, |
| std::shared_ptr< http::ResponseWriter > | writer | ||
| ) |
Middleware execution operator.
| req | The HTTP request. |
| writer | The HTTP response writer. |