Rate Limiter

TsgcWSRateLimiter — um componente de limitação de taxa completo que protege os endpoints do servidor de tráfego excessivo, abuso e scraping. Três algoritmos, quatro escopos, cotas de longo prazo e respostas HTTP 429 em conformidade com padrões.

TsgcWSRateLimiter

Rate limiter baseado em token bucket. Limita solicitações por segundo por cliente (ou por IP) em qualquer servidor WebSocket ou HTTP ao qual você o conecta.

Classe do componente

TsgcWSRateLimiter

Protocolo

Controle de admissão no servidor — conecta-se a qualquer servidor sgc.

Plataformas

Windows, macOS, Linux, iOS, Android

Edição

Professional / Enterprise

Adicione o componente, configure algumas propriedades, use

Configure rate + burst, conecte OnRateLimited e vincule ao seu 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;

O que tem por dentro

13 propriedades publicadas, 12 métodos, 3 eventos — extraídos da referência do componente.

Diagnóstico

Propriedades publicadas: Stats.

Core

Propriedades: Enabled.

Algoritmos

Propriedades: TokenBucket, SlidingWindow, FixedWindow.

Escopo

Propriedades: PerIP, PerAPIKey, PerUser.

Resposta

Propriedades: Response.

Persistência

Propriedades: StorageFile.

Documentação & Demos

Acesse a referência do componente, pegue o projeto demo pronto para executar e baixe a versão de avaliação.

Projeto demo — 01.WebSocket\09.RateLimiter Exemplo pronto para executar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Documento técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fontes primárias — somente deste componente.
Manual do usuário (PDF) Manual completo cobrindo todos os componentes da biblioteca.

Proteja seus endpoints contra abusos

Baixe a versão de avaliação gratuita e aplique limitação de taxa nos seus servidores sgcWebSockets em minutos.