- New Build and startup procedures for all services, compliant for both docker, podman and k8s

This commit is contained in:
Josako
2025-09-01 19:58:28 +02:00
parent 35f58f0c57
commit 593dd438aa
29 changed files with 527 additions and 691 deletions

View File

@@ -0,0 +1,48 @@
# Redis Databases (db=0..15) — Best Practices anno 2025
## Wat zijn Redis DBs?
- Redis ondersteunt meerdere logische databases (`0..15`, standaard).
- Elke DB heeft een eigen keyspace, maar **alles deelt dezelfde instance**:
- Geheugen (`maxmemory`)
- Eviction-policy
- Persistence-bestanden
- ACLs (geen DB-specifieke rechten)
- Replicatie
- In **Redis Cluster** bestaat enkel DB 0.
---
## Nadelen van meerdere DBs
- **Geen isolatie**: eviction en memory zijn gedeeld.
- **Niet cluster-compatibel**: alleen DB 0 werkt.
- **Meer connection pools**: elke DB → aparte pool → meer sockets.
- **Moeilijke security**: ACLs gelden niet per DB, enkel via key-prefixes.
- **Operationele verwarring**: `SELECT` vergeten → keys zoek je in de verkeerde DB.
---
## Wanneer werden ze gebruikt?
- Vroeger voor simpele scheiding: bv. DB 0 cache, DB 1 sessions.
- Mogelijkheid om `FLUSHDB` te doen zonder alle data kwijt te zijn.
- Legacy clients/tools verwachtten meerdere DBs.
---
## Moderne best practices
**Gebruik altijd DB 0** (zeker als je ooit naar Redis Cluster wil).
**Organiseer data met key-prefixes** (bv. `cache:`, `sess:`, `celery:`).
**Gebruik ACLs per prefix** voor toegangscontrole.
**Splits workloads in aparte instances** als je echte isolatie nodig hebt (cache vs sessions vs Celery).
**Monitor eviction en memory** (`used_memory`, `evicted_keys`) in plaats van te vertrouwen op DB-splitsing.
**Gebruik geen meerdere DBs** voor isolatie of multi-tenancy.
**Verlaat je niet op DBs** voor security of scaling.
**Verwacht geen verschil in eviction/persistence** tussen DBs.
---
## Conclusie
- Redis-databases zijn een **historisch artefact**.
- Ze voegen **geen echte isolatie** toe en schalen niet mee naar Cluster.
- **Prefix + ACLs** zijn de moderne manier om te scheiden.
- Voor echte isolatie: gebruik meerdere Redis-instanties of Redis Cluster.