Harshdev625 / Harshdev625/TimeMachine
Add Redis caching for session endpoints to improve performance
- Dominant language
- JavaScript
- Stars
- 12
- Forks
- 28
- PR merge metrics
- No merged PRs in 30d
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
Contributor guide
Assessment
This issue has not been assessed yet.