aspnetcore-redis-rate-limiting
aspnetcore-redis-rate-limiting copied to clipboard
Set up a Redis backplane for ASP.NET Core multi-node deployments, using the built-in Rate Limiting support that's part of .NET 7 and .NET 8.
```C# public override RateLimiterStatistics? GetStatistics() { throw new NotImplementedException(); } ```
A header "X-Rate-Limit-Reset" containing for example "2023-04-21T11:21:43.6820378Z" would be a nice addition. Since the data is available on the RedisFixedWindowResponse class, it should be possible to add it. See pull...
The parameter **permitCount** is passed to both **AttemptAcquire** and **AcquireAsync** in the **RateLimiter** abstract base class that all rate limiters in this library are are implementing. The definition for this...
According to the definitions of `AttemptAcquire `and `AcquireAsync`, when given `permitCount = 0`, it is possible to check if the permits are exhausted or wait until the permits are replenished,...
https://github.com/dotnet/runtime/issues/77669 ```C# private void Release(ConcurencyLeaseContext leaseContext) { var database = _connectionMultiplexer.GetDatabase(); // how to use async? if only RateLimitLease would implement IAsyncDisposable database.SortedSetRemove($"rl:{_partitionKey}", leaseContext.RequestId); } ```
What happens if we can't connect to Redis? Should we fail the request? Should we swallow the exception? Should we configure the behavior?
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.6.2 to 6.7.0. Release notes Sourced from Swashbuckle.AspNetCore's releases. v6.7.0 What's Changed Allow Swagger UI CSS and JS paths to be configurable by @mag1art in domaindrivendev/Swashbuckle.AspNetCore#2908 Add...
Bumps xunit.runner.visualstudio from 2.8.1 to 2.8.2. [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a...