Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rate-Limiting Middleware #7913

Open
0xRadioAc7iv opened this issue Dec 20, 2024 · 1 comment
Open

Rate-Limiting Middleware #7913

0xRadioAc7iv opened this issue Dec 20, 2024 · 1 comment

Comments

@0xRadioAc7iv
Copy link

What Roadmap is this project for?

Backend Roadmap

Project Difficulty

Intermediate

Add Project Details

You are required to build a Rate-Limiting Middleware for backend APIs to manage and monitor API usage effectively. The middleware should allow developers to configure limits on how many requests a user or client can make within a specified time frame. Key features include:

  • Configurable Limits: Enable developers to set custom request limits and time windows.
  • IP-Based or User-Based Limiting: Implement rate limiting based on either the client's IP address or a unique user identifier.
  • Storage Options: Support both in-memory storage (for simplicity) and persistent storage like Redis for distributed setups.
  • Headers for Communication: Include headers in the response to inform clients about the remaining request count and reset time.
  • Flexibility in Integration: Ensure that the middleware is easy to integrate into popular backend frameworks such as Express.js or Fastify.

This project is essential for understanding backend scalability and API management while building production-grade software.

Copy link
Contributor

🙌 Hello! Thank you for taking the time to file an issue.

If this is a bug report, please include any relevant logs or details that can help us debug the problem. Your help is greatly appreciated! 💡

We'll get back to you as soon as possible, kindly be patient for a response from a maintainer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant