Harshdev625 / Harshdev625/TimeMachine

Add Redis caching for session endpoints to improve performance

Aperta
#61 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement hacktoberfest
Lingua principale
JavaScript
Stelle
12
Fork
28
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## 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

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.