DiceDB Playground is an interactive platform that allows users to experiment with DiceDB commands in a live environment, similar to the Go Playground. Users will be able to submit and execute commands directly through a web interface. The initial implementation will focus on enabling users to search for and trigger commands.
For more details about DiceDB playground you can check here.
As part of this task we need to enhance unit tests, integration tests and stress test Rate Limiter implemented using DiceDB for Playground Backend.
This task would be extension of https://github.com/DiceDB/dice/issues/729
Details
Test the implementation under load to ensure it correctly blocks requests after 1000 requests/minute.
Test with fewer than 1000 requests per minute, ensuring no requests are blocked.
Test with more than 1000 requests per minute, ensuring that requests beyond the limit are blocked and receive a 429 response.
Ensure the rate limit resets correctly after each minute.
Validate the correctness of rate-limiting headers (x-ratelimit-limit, x-ratelimit-remaining, etc.) in responses.
Test normal API /cli behaviour when under the rate limit (e.g., under 1000 requests/minute).
Description
DiceDB Playground is an interactive platform that allows users to experiment with DiceDB commands in a live environment, similar to the Go Playground. Users will be able to submit and execute commands directly through a web interface. The initial implementation will focus on enabling users to search for and trigger commands.
For more details about DiceDB playground you can check here.
As part of this task we need to enhance unit tests, integration tests and stress test Rate Limiter implemented using DiceDB for Playground Backend. This task would be extension of https://github.com/DiceDB/dice/issues/729
Details
429
response.x-ratelimit-limit
,x-ratelimit-remaining
, etc.) in responses./cli
behaviour when under the rate limit (e.g., under 1000 requests/minute).