It's a todo app server built with Express. Main repo: Todo
These specs are additions to CRUD operations.
- Made an in-memory cache that has 30 seconds of lifespan. After each
post
,put
ordelete
request, cache's lifespan resets. That way, API response times reduced are down to ~5ms. (if cache is available.) - Built a rate-limit middleware using
express-rate-limit
. Any client makes 100 requests per 30 seconds, gets temporary IP ban. - Built a rate-limit middleware using
express-slow-down
. After 50 requests in 30 seconds, each request's response time gets slower +500ms.