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,putordeleterequest, 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.