Rate limiter

TsgcWSRateLimiter — een volledig uitgerust rate-limiting-component dat server-endpoints beschermt tegen overmatig verkeer, misbruik en scraping. Drie algoritmes, vier scopes, lange-termijn-quota's en standards-compliant HTTP 429-responses.

TsgcWSRateLimiter

Token-bucket-rate-limiter. Begrenst requests per seconde per client (of per IP) op elke WebSocket- of HTTP-server waaraan je hem koppelt.

Componentklasse

TsgcWSRateLimiter

Protocol

Server-side toelatingscontrole — koppelbaar aan elke sgc-server.

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Professional / Enterprise

Plaats het component, stel een paar eigenschappen in, klaar

Configureer rate + burst, hook OnRateLimited en koppel aan je server.

uses
  sgcWebSocket, sgcWebSocket_Server, sgcRateLimiter;

var
  RL: TsgcWSRateLimiter;
  WSServer: TsgcWebSocketHTTPServer;
begin
  RL := TsgcWSRateLimiter.Create(nil);
  RL.RequestsPerSecond := 20;
  RL.BurstSize         := 50;
  RL.OnRateLimited     := DoRateLimited;

  WSServer := TsgcWebSocketHTTPServer.Create(nil);
  WSServer.Port := 80;
  WSServer.RateLimiter := RL;
  WSServer.Active := True;
end;

Wat zit erin

13 published properties, 12 methodes, 3 events — uit de componentreferentie.

Diagnostiek

Published properties: Stats.

Core

Properties: Enabled.

Algoritmes

Properties: TokenBucket, SlidingWindow, FixedWindow.

Scoping

Properties: PerIP, PerAPIKey, PerUser.

Respons

Properties: Response.

Persistentie

Properties: StorageFile.

Documentatie & demo's

Deep-link naar de componentreferentie, pak het kant-en-klare demoproject en download de proefversie.

Demoproject — 01.WebSocket\09.RateLimiter Kant-en-klaar voorbeeldproject. Wordt meegeleverd in het sgcWebSockets-pakket — download hieronder de proefversie.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronverwijzingen — alleen voor dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt.

Bescherm je endpoints tegen misbruik

Download de gratis proefversie en pas binnen enkele minuten rate limiting toe op je sgcWebSockets-servers.