Skip to content

luis2307/WebAPI-NET-7-Business-Archetecture

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebAPI-NET-7-Business-Archetecture .NET

This project contains a clean web API architecture with .NET 7 following best practices such as SOLID, Design Patterns, and decoupling, among others. You can use it in your projects and improve it as you like but don't forget to use tags.

In this project, you will find :

  • REST API
  • .NET 7
  • Swagger
  • OpenAPI
  • Dapper
  • JWT Token Authentication following OAuth 2.0 standards
  • Example of unit testing with the MSTest Library
  • Database script
  • Repository Design Pattern
  • Unit of work design pattern
  • Dependency injection
  • Refactoring.
  • HealthChecks services to know the health status of the APP.
  • WatchDog will monitor your application in real-time.

I will continue to add more features in the future and update the documentation.

Redis in Docker:

docker run -d --name redis-stack -e REDIS_ARGS="--requirepass {your hard passwork here}" -p 6379:6379 -p 8001:8001 redis/redis-stack:latest

Open Redis Browser http://localhost:8001/

Username: default

Password: You have set it up

Rate limiting:

Types of rate limiters

  • Concurrency limit is the simplest form of rate limiting. It doesn’t look at time, just at the number of concurrent requests. “Allow 10 concurrent requests”.

  • Fixed window limit lets you apply limits such as “60 requests per minute”. Every minute, 60 requests can be made. One every second, but also 60 in one go.

  • Sliding window limit is similar to the fixed window limit but uses segments for more fine-grained limits. Think “60 requests per minute, with 1 request per second”.

  • Token bucket limit lets you control flow rate and allows for bursts. Think, “You are given 100 requests every minute”. If you make all of them over 10 seconds, you’ll have to wait for 1 minute before you are allowed more requests.

Documentation

Cheers!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published