A payment service must guarantee that a transaction is processed exactly once even if retries occur. Which pattern best addresses this?
-
A
Optimistic locking with version fields
-
B
Idempotency keys stored server-side
-
C
Two-phase commit across all services
-
D
Read-your-writes consistency