Class RateLimitingSettings
Namespace: Cephalon.Engine.Configuration
Assembly: Cephalon.Engine.dll
Describes configuration-driven rate-limiting settings for a Cephalon app.
public sealed class RateLimitingSettingsInheritance
Section titled “Inheritance”Inherited Members
Section titled “Inherited Members”object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()
Constructors
Section titled “Constructors”RateLimitingSettings(bool?, string?, int?, int?, int?, int?, IReadOnlyList<RateLimitingOverrideSettings>?)
Section titled “ RateLimitingSettings(bool?, string?, int?, int?, int?, int?, IReadOnlyList<RateLimitingOverrideSettings>?)”Initializes a new instance of the
public RateLimitingSettings(bool? enabled = null, string? algorithm = null, int? permitLimit = null, int? queueLimit = null, int? windowSeconds = null, int? segmentsPerWindow = null, IReadOnlyList<RateLimitingOverrideSettings>? overrides = null)Parameters
Section titled “Parameters”enabled bool?
Whether rate limiting was explicitly enabled.
algorithm string?
The requested rate-limiting algorithm, such as FixedWindow or TokenBucket.
permitLimit int?
The maximum permits available per limiter window or bucket.
queueLimit int?
The maximum queued requests allowed before rejection.
windowSeconds int?
The limiter window duration in seconds when the selected algorithm uses windows.
segmentsPerWindow int?
The number of segments per window when sliding windows are used.
overrides IReadOnlyList<RateLimitingOverrideSettings>?
The named override policies targeted at specific transports or behaviors.
Properties
Section titled “Properties”Algorithm
Section titled “ Algorithm”Gets the requested rate-limiting algorithm, such as FixedWindow or TokenBucket.
public string? Algorithm { get; }Property Value
Section titled “Property Value”Gets an empty rate-limiting-settings instance.
public static RateLimitingSettings Empty { get; }Property Value
Section titled “Property Value”Enabled
Section titled “ Enabled”Gets a value indicating whether rate limiting was explicitly enabled.
public bool? Enabled { get; }Property Value
Section titled “Property Value”bool?
HasValues
Section titled “ HasValues”Gets a value indicating whether any rate-limiting settings were explicitly supplied.
public bool HasValues { get; }Property Value
Section titled “Property Value”Overrides
Section titled “ Overrides”Gets the named override policies targeted at specific transports or behaviors.
public IReadOnlyList<RateLimitingOverrideSettings> Overrides { get; }Property Value
Section titled “Property Value”IReadOnlyList<RateLimitingOverrideSettings>
PermitLimit
Section titled “ PermitLimit”Gets the maximum permits available per limiter window or bucket.
public int? PermitLimit { get; }Property Value
Section titled “Property Value”int?
QueueLimit
Section titled “ QueueLimit”Gets the maximum queued requests allowed before rejection.
public int? QueueLimit { get; }Property Value
Section titled “Property Value”int?
SegmentsPerWindow
Section titled “ SegmentsPerWindow”Gets the number of segments per window when sliding windows are used.
public int? SegmentsPerWindow { get; }Property Value
Section titled “Property Value”int?
WindowSeconds
Section titled “ WindowSeconds”Gets the limiter window duration in seconds when the selected algorithm uses windows.
public int? WindowSeconds { get; }Property Value
Section titled “Property Value”int?