Skip to content

Implement Redis caching for SSE notifications and session state #21

@rsalus

Description

@rsalus

Context

PostgreSQL persistence is being implemented for WorkItems and PatientRegistry. Redis is already used for AnalysisResultStore caching.

Scope

Future work to consider:

  1. SSE Notification Pub/Sub

    • Replace in-memory Channel<Notification> with Redis pub/sub
    • Enables multi-instance deployments with shared notification stream
  2. Session Affinity (if needed)

    • Consider Redis for load-balanced session state
    • May not be needed if using sticky sessions
  3. Rate Limiting (optional)

    • Redis-backed rate limiting for API endpoints

Not In Scope

  • AnalysisResultStore - already uses Redis (no changes needed)

Acceptance Criteria

  • SSE notifications work across multiple Gateway instances
  • No data loss when instances scale up/down

Related

  • Design: docs/designs/2026-02-02-observability-persistence-coverage.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    scope:gatewayGateway API (.NET backend)

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions