Rate Limiter

TsgcWSRateLimiter — componente de limitación de tasa con todas las prestaciones que protege los endpoints del servidor frente al tráfico excesivo, abusos y scraping. Tres algoritmos, cuatro ámbitos, cuotas a largo plazo y respuestas HTTP 429 conformes a los estándares.

TsgcWSRateLimiter

Rate limiter por token-bucket. Limita las peticiones por segundo por cliente (o por IP) en cualquier servidor WebSocket o HTTP al que lo acoples.

Clase del componente

TsgcWSRateLimiter

Protocolo

Control de admisión en el servidor — se acopla a cualquier servidor sgc.

Plataformas

Windows, macOS, Linux, iOS, Android

Edición

Professional / Enterprise

Coloca el componente, ajusta unas propiedades y listo

Configura tasa + ráfaga, engancha OnRateLimited y vincúlalo a tu servidor.

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;

Qué hay dentro

13 propiedades publicadas, 12 métodos, 3 eventos — tomados de la referencia del componente.

Diagnóstico

Propiedades publicadas: Stats.

Núcleo

Propiedades: Enabled.

Algoritmos

Propiedades: TokenBucket, SlidingWindow, FixedWindow.

Ámbito

Propiedades: PerIP, PerAPIKey, PerUser.

Respuesta

Propiedades: Response.

Persistencia

Propiedades: StorageFile.

Documentación y demos

Accede directamente a la referencia del componente, descarga el proyecto demo listo para ejecutar y descarga la prueba.

Proyecto demo — 01.WebSocket\09.RateLimiter Proyecto de ejemplo listo para ejecutar. Se incluye en el paquete sgcWebSockets — descarga la prueba más abajo.
Documento técnico (PDF) Características, inicio rápido, ejemplos de código para Delphi y C++ Builder y referencias de fuentes primarias — solo este componente.
Manual de usuario (PDF) Manual completo que cubre todos los componentes de la librería.

Protege tus endpoints frente al abuso

Descarga la prueba gratuita y limita la tasa de tus servidores sgcWebSockets en minutos.