Description Problem Statement
Currently, every time the user refreshes their dashboard or checks session history, the backend fetches data directly from MongoDB.
This increases response time and database load, especially when users frequently start, pause, or complete sessions.
Proposed Solution
Add a Redis caching layer to temporarily store frequently accessed session data (/current, /history) for faster retrieval.
Implementation idea:
Use ioredis or redis npm package.
Cache key format: session:${userEmail}
Set a TTL of 5–10 minutes.
Invalidate cache whenever session data is created, updated, or deleted.
Alternatives Considered
Using in-memory caching (e.g., node-cache) — but it wouldn’t scale across multiple backend instances.
MongoDB indexing — helps query speed but doesn’t reduce repeated hits.
Additional Context
This would improve user experience on dashboards and analytics pages, reducing API response times by 30–50% while easing database loa
Reactions are currently unavailable
You can’t perform that action at this time.
Problem Statement
Proposed Solution
Implementation idea:
Use ioredis or redis npm package.
Cache key format: session:${userEmail}
Set a TTL of 5–10 minutes.
Invalidate cache whenever session data is created, updated, or deleted.
Alternatives Considered
Using in-memory caching (e.g., node-cache) — but it wouldn’t scale across multiple backend instances.
MongoDB indexing — helps query speed but doesn’t reduce repeated hits.
Additional Context