Škálování
Doporučení pro horizontální a vertikální škálování
Verze dokumentu: 1.0.0
Poslední aktualizace: 2026-02-10
1. Matice škálování
| Komponenta |
Horizontální |
Vertikální |
Poznámky |
| Webové rozhraní |
✅ 1–10+ replik |
✅ |
Bezstavové; doporučen HPA |
| API Server |
⚠️ 1 replika* |
✅ |
*Jedna replika na licenci; pro více replik kontaktujte podporu |
| OCSP Responder |
✅ 1–5+ replik |
✅ |
Přístup k DB pouze pro čtení, bezstavový |
| PostgreSQL |
✅ Čtecí repliky |
✅ |
Primární + repliky pro škálování čtení |
| Redis |
✅ Sentinel/Cluster |
✅ |
Volitelné HA nasazení |
2. Plánování kapacity
Objem tajemství
| Počet tajemství |
API Server |
PostgreSQL |
Redis |
| < 10 000 |
2 CPU / 4 GB |
2 CPU / 4 GB / 50 GB |
1 CPU / 1 GB |
| 10 000–50 000 |
4 CPU / 8 GB |
4 CPU / 8 GB / 100 GB |
2 CPU / 2 GB |
| 50 000–200 000 |
4 CPU / 16 GB |
8 CPU / 16 GB / 200 GB |
2 CPU / 4 GB |
| 200 000+ |
8 CPU / 32 GB |
16 CPU / 32 GB / 500 GB+ |
4 CPU / 8 GB |
Souběžní uživatelé
| Uživatelé |
Repliky webového rozhraní |
Prostředky API Serveru |
| < 50 |
1–2 |
2 CPU / 4 GB |
| 50–200 |
2–3 |
4 CPU / 8 GB |
| 200–500 |
3–5 |
4 CPU / 16 GB |
| 500+ |
5+ (HPA) |
8 CPU / 32 GB |
Připojení agentů
| Agenti |
Prostředky API Serveru |
Poznámky |
| < 50 |
Základní prostředky |
Standardní interval heartbeatu |
| 50–200 |
+2 GB RAM |
Zvýšit interval heartbeatu na 120 s |
| 200–500 |
+4 GB RAM |
Zvážit connection pooling |
| 500+ |
+8 GB RAM |
Kontaktujte podporu pro ladění |
3. Konfigurace Kubernetes HPA
Webové rozhraní
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: mazevault-frontend-hpa
namespace: mazevault
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: mazevault-frontend
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
- type: Resource
resource:
name: memory
target:
type: Utilization
averageUtilization: 80
OCSP Responder
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: mazevault-ocsp-hpa
namespace: mazevault
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: mazevault-ocsp
minReplicas: 1
maxReplicas: 5
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
4. Škálování databáze
Čtecí repliky (Azure)
az postgres flexible-server replica create \
--resource-group rg-mazevault-prod \
--replica-name psql-mazevault-replica-1 \
--source-server psql-mazevault-prod
Connection Pooling
Pro nasazení s vysokou souběžností zvažte PgBouncer:
# pgbouncer.ini equivalent settings
pool_mode = transaction
max_client_conn = 400
default_pool_size = 25
5. Ladění výkonu
PostgreSQL
| Parametr |
Malý (<10K tajemství) |
Střední (10K–100K) |
Velký (100K+) |
shared_buffers |
1 GB |
4 GB |
8 GB |
effective_cache_size |
3 GB |
12 GB |
24 GB |
work_mem |
16 MB |
64 MB |
128 MB |
max_connections |
100 |
200 |
400 |
Redis
| Parametr |
Hodnota |
Popis |
maxmemory |
50–75 % dostupné RAM |
Limit paměti |
maxmemory-policy |
allkeys-lru |
Politika vyřazování |
Související