Redis
Redis provides caching, session management, pub/sub messaging, and rate limiting across MATIH services. It is deployed via the Bitnami Helm chart with Sentinel for high availability.
Configuration
# From matih-control-plane/values.yaml
redis:
enabled: true
auth:
enabled: true
existingSecret: matih-redis-credentials
master:
persistence:
enabled: true
size: 10Gi
resources:
requests: { cpu: 200m, memory: 256Mi }
limits: { cpu: 1000m, memory: 1Gi }
replica:
replicaCount: 2
persistence:
enabled: true
size: 10Gi
sentinel:
enabled: true
metrics:
enabled: true
serviceMonitor:
enabled: trueService Connections
Services connect to Redis using FQDN:
# Control plane
redis:
host: "redis-master.matih-control-plane.svc.cluster.local"
port: 6379
# Data plane
redis:
host: "redis-master.matih-data-plane.svc.cluster.local"
port: 6379
existingSecret: "redis"
secretKey: "redis-password"Use Cases
| Use Case | Service | Pattern |
|---|---|---|
| Configuration cache | config-service | GET/SET with 300s TTL |
| Query result cache | ai-service | GET/SET with 3600s TTL |
| Session store | All services | Hash with session ID key |
| Config hot reload | config-service | Pub/Sub on config-updates |
| Rate limiting | api-gateway | Sliding window counters |