~/projects/fullcycle-rate-limiter

Rate Limiter em Go com Redis

  • Go
  • Redis
  • Docker
  • Middleware
  • Strategy Pattern

Ver no GitHub

Middleware HTTP projetado para proteção de serviços web contra sobrecarga e abuso de requisições. Implementa limitação de taxa por endereço IP ou token de acesso com limites e tempos de bloqueio independentes:

  • Estratégia Dupla de Limitação: Restringe requisições por segundo por IP, com regras prioritárias para tokens customizados (via header API_KEY)
  • Padrão Strategy: Desacopla regras de contagem e verificação da camada de transporte HTTP, permitindo substituir o Redis por outro mecanismo de persistência
  • Configuração Flexível: Limites de requisições e períodos de expiração/bloqueio controlados via variáveis de ambiente
  • Conformidade HTTP: Responde com status HTTP 429 (Too Many Requests) informando o esgotamento da cota de requisições
  • Ambiente Isolado: Acompanha testes automatizados e orquestração do serviço com Redis via Docker Compose
Dario em pé

status

status: online
> local: Brasil

conectar

stack

ultimos_til