{"repo":"cristipufu/aspnetcore-redis-rate-limiting","free":true,"listed":false,"github":"https://github.com/cristipufu/aspnetcore-redis-rate-limiting","clone":"git clone https://github.com/cristipufu/aspnetcore-redis-rate-limiting.git","description":"Set up a Redis backplane for ASP.NET Core multi-node deployments","language":"C#","stars":294,"topics":["asp-net-core","aspnetcore","net7","rate-limit","rate-limiter","rate-limiting","redis","distributed","rate-limit-redis","rate-limiter-api"],"license":"MIT","category":"databases-storage","readme_excerpt":"aspnetcore-redis-rate-limiting Set up a Redis backplane for Rate Limiting ASP.NET Core multi-node deployments. The library is build on top of the built-in Rate Limiting support that's part of .NET 7 and .NET 8. For more advanced use cases you can check out the official documentation here. install strategies Concurrent Requests Rate Limiting Concurrency Rate Limiter limits how many concurrent requests can access a resource. If your limit is 10, then 10 requests can access a resource at once and the 11th request will not be allowed. Once the first request completes, the number of allowed requests increases to 1, when the second request completes, the number increases to 2, etc. Instead of \"You can use our API 1000 times per second\", this rate limiting strategy says \"You can only have 20 API requests in progress at the same time\". You can use a new instance of the RedisConcurrencyRateLimiter class or configure the predefined extension method: Fixed Window Rate Limiting The Fixed Window algorithm uses the concept of a window. The window is the amount of time that our limit is applied before we move on to the next window. In the Fixed Window strategy, moving to the next window means resetting the limit back to its starting point. You can use a new instance of the RedisFixedWindowRateLimiter class or configure the predefined extension method: Sliding Window Rate Limiting Unlike the Fixed Window Rate Limiter, which groups the requests into a bucket based on a very definitive time wi","default_branch":null,"files":null,"tree":[],"storefront":"/r/cristipufu","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cristipufu/aspnetcore-redis-rate-limiting/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}