Skip to content

Este repositório contém uma simples implementação de uma api usando rate limiting.

Notifications You must be signed in to change notification settings

warteruzannan/nodejs-rate-limiting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rate Limiting - NodeJS ⏳

Este repositório contém uma simples implementação de uma api usando rate limiting.

Rate Limiting é uma técnica bem conhecida que permite limitar o uso de um certo recurso em seu backend. Esse limite pode ser estabelecido de várias formas: número de requests por segundo, número de request dentro de um intervalo de tempo, número de request para uma certa apiKey, entre outras. De forma geral, quando esse limite é ultrapassado, a api retorna um erro 429 (too many requests) indicando que o número máximo de requisições foi atingido.

Por ser um conceito, o rate Limiting pode ser implementado em várias linguagens, ferramentas, bibliotecas, etc. Neste repositório, você vai encontrar uma implementação usando NodeJS e Redis.

A implementação feita aqui se resume a um middleware do express que verifica o momento da última requisição para um determinado ip. É permitido no máximo uma requisição a cada 5 segundos.

Executando o projeto

Pré-requisitos:

Execute

  1. Faça clone do repositório
  2. Execute make dev
  3. Acesse http://localhost:3200

TODO

  • Criar factory do middleware.
  • Requisições dentro de um intervalo de tempo

About

Este repositório contém uma simples implementação de uma api usando rate limiting.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages