Configuring Rate Limiting Middleware
Apply rate limits per endpoint and policy.
AddRateLimiter
Configuration starts with AddRateLimiter in the service container. You define one or more named policies and an optional global rejection status code.
builder.Services.AddRateLimiter(options =>
{
options.RejectionStatusCode =
StatusCodes.Status429TooManyRequests;
});A Fixed Window Policy
AddFixedWindowLimiter registers a named policy. Set the permit limit, window length and queue behavior.
options.AddFixedWindowLimiter("fixed", limiter =>
{
limiter.PermitLimit = 100;
limiter.Window = TimeSpan.FromMinutes(1);
limiter.QueueProcessingOrder = QueueProcessingOrder.OldestFirst;
limiter.QueueLimit = 0;
});All lessons in this course
- Rate Limiting Algorithms
- Configuring Rate Limiting Middleware
- Output Caching Basics
- Cache Policies and Invalidation