Skip to content

Thomas Brown#296

Open
yardcooper wants to merge 2 commits intocrexi-dev:masterfrom
yardcooper:feature/rate-limiter-implementation
Open

Thomas Brown#296
yardcooper wants to merge 2 commits intocrexi-dev:masterfrom
yardcooper:feature/rate-limiter-implementation

Conversation

@yardcooper
Copy link

@yardcooper yardcooper commented Mar 13, 2025

Test Cases Considered

  • Basic Rate Limiting
    • Fixed Window should limit requests per time window.
    • Sliding Window should limit requests in a rolling time window.
    • Multiple rules should apply correctly to a resource.
  • Multi-Client & Multi-Resource Handling
    • Multiple clients should be tracked separately.
    • Multiple API resources should have independent rate limits.
  • Time-Based Rate Limiting
    • Requests should reset after the configured time window.
    • Requests should reset exactly on the time boundary.
  • Extreme Load & Stress Testing
    • Insanely high request volume should be blocked after the limit.
    • Bursty traffic should be throttled correctly.
    • Randomized users and endpoints should all be tracked separately.
  • Concurrency & Edge Cases
    • Requests from different users and IPs should not interfere with each other.
    • Conflicting rate-limiting rules should enforce the strictest rule.
    • Sliding Window should allow new requests as old ones expire.

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

Successfully merging this pull request may close these issues.

1 participant