Was ist Idempotenz
Wiederholte Anfrage liefert gleiches Ergebnis
Idempotenz ist eine Eigenschaft einer Operation, bei der mehrfache Ausführungen dasselbe Ergebnis wie eine einzige Ausführung liefern.
Beispiele idempotenter Operationen
- GET — Datenabruf ändert den Zustand nicht
- PUT — wiederholtes Setzen eines Werts ergibt denselben Zustand
- DELETE — wiederholtes Löschen einer bereits gelöschten Ressource
Nicht-idempotente Operationen
- POST — erstellt bei jedem Aufruf eine neue Ressource
- Zähler-Inkrement
Warum es wichtig ist
- Wiederholungsanfragen — sicher bei Netzwerkfehlern
- Verteilte Systeme — vereinfacht Fehlerbehandlung
- Zahlungssysteme — Schutz vor Doppelabbuchungen
Implementierung
- Idempotency Key — eindeutiger Schlüssel für jede Anfrage
- Speicherung des Zustands ausgeführter Operationen
- TTL für Idempotenz-Schlüssel