Optimierung der Infrastrukturkosten
Kurze Zusammenfassung
Die finanzielle Effizienz der Infrastruktur beruht auf drei Dingen:1. Transparente Messbarkeit (Tags, Showback/Chargeback, $/Werteinheit).
2. Ingenieurdisziplin (Rightsizing, Auto-Scale, korrekte Speicher-/Cache-/Netzwerkklassen).
3. Architektonische Lösungen (wo Bytes und Millisekunden „fließen“).
Ziel ist es, die TCO unter Beibehaltung von SLO und Entwicklungsgeschwindigkeit zu senken.
Geschäftsmetriken und Einheitenökonomie
$/1000 RPS - Kosten für die Bearbeitung von 1000 Anfragen auf Schlüsselrouten.
$/ms p95 - Kosten für die Reduzierung des Verzögerungsschwanzes um 1 ms (wichtig für die Konvertierung).
$/Spieler/Monat oder $/Einzahlung - für iGaming/Fintech.
TCO = compute + storage + network egress + managed-services + Lizenzen + Support.
Technische Schuldenkapitalisierung: Erfassen Sie, wie viel „ungeschminkte“ Latenz/Log-Leaks kosten.
- Wenn die API kostet $120/Stunde und gibt 60k RPS bei Ziel p95, dann $/1000 RPS ≈ $2/h. Jede Optimierung ist mit diesem „Einheitspreis“ zu vergleichen.
Inventarisierung und Tagging
Die Tags sind obligatorisch: 'env', 'owner', 'product', 'service', 'region', 'cost-center', 'tier'.
Showback/Chargeback: Wöchentliche Berichte über Teams/Services.
Kontrolle von "Niemands' -Ressourcen: ohne Tags - nicht ausrollen, nicht verlängern.
sql
SELECT env, product, service,
SUM(cost_usd) AS cost_month,
SUM(rps) AS rps_month,
SUM(cost_usd)/NULLIF(SUM(rps)/1000,0) AS usd_per_1k_rps
FROM finops_daily
WHERE usage_date BETWEEN:from AND:to
GROUP BY 1,2,3;
Rightsizing und Instanzklassen
CPU/Memory Profile: Profile unter Last entfernen; Reduzieren Sie die Anforderungen/Limits auf einen CPU „Arbeitspunkt“ von 50-70%.
Größe der Instanzen: oft günstiger als N klein statt M groß (besser bin-packing + CA).
ARM-Instances: günstiger bei vergleichbarer Leistung, wenn der Stack kompatibel ist.
Heiße/kalte Pools: Halten Sie einen kleinen Warmbestand anstelle von permanentem „Fett“.
Rabatte und Verbrauchsmuster
Reserved/Savings Plans/Committed Use: Buchen Sie eine nachhaltige Basis (40-70% Einsparungen).
Spot/Preemptible: für unkritische/asynchrone Aufgaben, CI, Analytics, Cache-Worker.
Mix-Strategie: Basis - reserviert, Spitzen - on-demand, Hintergrund - spot.
Automatische Skalierung und Elastizität
HPA/KEDA über SLO-Signale (Latency, Queue Lag, RPS), nicht nur über die CPU.
Cluster Autoscaler mit Warmpools und Image Pre-Pull für schnelle Starts.
Scale-down mit Hysterese, um Cluster nicht zu „zersägen“ (Anti-Flapping).
Netzwerk und egress - ein stiller Budgetfresser
CDN/tiered-cache/origin-shield reduziert egress von origin.
Komprimierung (Brotli/gzip), webp/avif, diff-API (nur geänderte Felder übertragen).
Gruppieren Sie Aufrufe zu externen APIs, verwenden Sie keepalive/retry-budget.
Weniger Chats innerhalb von DC: Event-Driven, Batching, Event-Aggregation.
Speicher und Daten
Speicherklassen: heiß (NVMe), warm (gp2/gp3), kalt (S3/Glacier/Archiv).
Lebenszykluspolitik: Automatische Übersetzung von „alten“ Objekten in billige Klassen.
Kompression/Partitionierung in DWH, TTL auf temporäre Tabellen/Snapshots.
Vermeiden Sie redundante Replikation: vernünftige RF, kostengünstige Snapshot-Richtlinien.
Caching: Redis/Memcached für Hot-Set statt „teurer“ Lesungen aus der DB.
Logs, Metriken, Traces - klug bezahlen
Sampling-Protokolle (Rate-Limit nach Ebene/Muster), „strukturelle“ Protokolle statt Geschwätz.
Tail-basiertes Sampling für Trails (wir speichern „Tails“ p99 und Fehler, der Rest wird aggressiv geschnitten).
Downsampling-Metriken: Aggregation in Push-Gates, Speicherung von High-Res nur 7-14 Tage.
PII-Filtration - reduziert sowohl Risiken als auch Volumen.
Architektur und die „Kosten einer Millisekunde“
HTTP/2/3 + resumption: weniger handshake → weniger CPU/egress/Latenz.
Cache-Schlüssel und TTL: hohe Trefferquote - direktes Geld (weniger Herkunft und DB).
gRPC/protobaf für Service-Service: weniger Bytes.
Batch/Stream für Hintergrundaufgaben; Idempotenz → weniger Retrays.
DB-Auswahl: Speichern Sie nicht „alles in einem“ - günstige KV/Caches für häufige Lesungen, Analytik - in der DWH-Kolonne.
Datenschemata: kurze Felder/komprimierte Typen, Kontrolle der Index-Kardinalität.
DR, Reserven und Multi-Region
Geschäftsziel: RTO/RPO → die Kosten für DR. Überbezahlen Sie nicht für einen Vermögenswert, wenn der Vermögenswert ausreicht.
Halten Sie kalte Backups in einer billigen Klasse, Replik ist differentiell.
Ein einziges Paket von RoR/Regionen: Jede Zone zieht ≥60% des Peaks → hält der Ablehnung eines Nachbarn ohne „goldene“ Redundanz stand.
Umgebungen und CI/CD
Auto-Ruhezustand von Stage-/Preview-Umgebungen, Auto-TTL.
Runner-s CI auf Spot, Artefakt-Cache, Einschränkungen der Parallelität.
Die Testdaten sind kompakt, On-the-fly-Erzeugung statt Gigabyte-Speicherung.
Lieferanten- und Lizenzmanagement
Überprüfen Sie die Volumina und Preistypen einmal pro Quartal.
Ein wettbewerbsfähiger Backup-Anbieter ist ein Argument im Handel.
Lizenzen (APM/Sicherheit): Berechnen Sie $ für das Nutzsignal und nicht für „alle Protokolle der Welt“.
Prozesse und Verwaltung
FinOps-Zeremonien: wöchentlicher Teambericht, monatlicher Cost Review (Top 10 „Leaks“, Aktionsartikel).
Guardrails: Projekt-/Neyspace-Quoten, Budget-Alerts, Verbot, Ressourcen ohne Tags einzusetzen.
Blameless Post-Sea durch „Preis-Vorfälle“ (durchgesickerte Protokolle, runaway autoscale).
IaC: alle Grenzen, Klassen, TTL - im Repository, PR-Revue.
Checkliste für Einsparungen
- Tags/showback/charjback enthalten, keine „no-draw“ Ressourcen.
- Rightsizing durch Profile, ARM/andere Arten bewertet.
- Commit-Rabatte schließen die Basis, Spot ist der Hintergrund/Analytik/CI.
- HPA/KEDA nach SLO-Metriken, CA mit Warmpools.
- CDN/tiered-cache, Komprimierung, Cacheschlüssel ohne „Rauschen“.
- Speicher: Klassen, Lifecycle, TTL, Caches für Hot-Set.
- Logs/Traces: Sampling, tail-based, PII-Filter.
- DR über RTO/RPO, Cold Backups in der günstigen Klasse.
- Umgebungen mit Auto-TTL, CI auf Spot.
- FinOps-Rhythmen und Guardrails im IaC.
Typische Fehler
„Optimierung ohne Metriken“: keine $/1000 RPS → keine Vergleichsoptionen.
Abgeschaltete/ungenutzte Ressourcen hängen monatelang.
Lagerung von „allem“ in einem heißen Klassenzimmer, kein Lifecycle.
Logs als „schwarzes Loch“: 100% ingest, 0% Verbrauch.
Auto-Scale auf der CPU ohne Latenz/Warteschlangen → Überzahlung und SLO-Regression.
Zu aggressive DR ohne Business Case.
Microservices „for a tick“ - das Wachstum von Interservice-Verkehr und Rechnungen.
Mini-Playbooks
1) Schnelle Rechnungsprüfung (48 Stunden)
1. Schnitt durch die Top 10 Services/Region. 2) Für jeden - $/1000 RPS, Hit-Verhältnis CDN, egress.
2. Rollen Sie die TTL/Cache-Schlüssel aus, schalten Sie die „lauten“ Protokolle aus. 4) Lifecycle auf S3/Objekte aktivieren.
2) 25% Reduzierung von egress
1. Tiered-cache+shield, `stale-while-revalidate`. 2) Komprimieren Sie die Bilder in webp/avif.
2. Diff-API und gzip/brotli auf den Text. 4) Überprüfen Sie wiederholte Anfragen/Retrays.
3) Kostenscheibe OBD
1. Top-Abfragen (p95/IO) → Indizes/Batching. 2) Hot-set в Redis.
2. Archivierung alter Daten (TTL), read-replicas auf einem billigen Stor.
4) Beendigung der „Säge“ des Felsens
1. Stabilisation/Cooldown erhöhen. 2) MinReplicas> 0 auf dem Höhepunkt.
2. Vorwärmen von Anschlüssen/TLS. 4) Schneiden Sie überschüssige Rückstände.
Beispiel für ein „sparsames“ Nginx (Komprimierung, Cache, SWR)
nginx proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=EDGE:512m max_size=50g inactive=7d;
server {
listen 443 ssl http2 reuseport;
Compression brotli on; brotli_comp_level 5; gzip on;
Static: year, immutable location/assets/{
add_header Cache-Control "public, max-age=31536000, immutable" always;
try_files $uri =404;
}
Semi-dynamics: s-maxage + SWR location/catalog/{
proxy_cache EDGE;
add_header Cache-Control "public, s-maxage=600, max-age=120, stale-while-revalidate=900, stale-if-error=86400" always;
proxy_ignore_headers Set-Cookie;
proxy_pass https://origin_catalog;
}
}
Spezifität für iGaming/Fintech
Peaks (Matches/Turniere): Vorher 'minReplicas' anheben und CDN/TLS aufwärmen, aber Headroom punktgenau halten - nur auf heißen Pfaden (Kataloge, Lobbys, Matches), der Rest im Degrad-Modus.
Zahlungen/PSP: Verzeichnis-Cache (BIN, Limits), Idempotenz reduziert die Kosten für Takes, separater Egress-Pool für Whitelists von Anbietern.
Anti-Fraud/Bots: „graue“ Routen und billige Challenges am Rand statt einer teuren Tiefenprüfung für jede Anfrage.
Live-Inhalte/Anbieter: Cache am Rand + Begrenzung der Häufigkeit von Updates; CDN-Verträge zu großen Veranstaltungen zu überprüfen.
Summe
Die Kostenoptimierung ist kein einmaliger Reinigungsprozess, sondern ein permanenter FinOps-Prozess: Messen Sie den Wert ($/Einheit), automatisieren Sie kostengünstige Lösungen (Cache/TTL/Sampling), nutzen Sie Rabatte und die richtigen Ressourcenklassen, halten Sie die Elastizität unter SLO und komplizieren Sie die Architektur nicht, wo es sich nicht rechnet. So reduzieren Sie die TCO, indem Sie die Produktgeschwindigkeit und die Stabilität der Plattform beibehalten.