Technische Entscheidungen · Middle · Frage 2 von 14
Nach einer Überweisung öffnet der Nutzer seinen Kontostand. Die Zahl muss exakt sein, während der Rest der Banking-App aus Replicas liest. Wohin geht dieser Lesezugriff?
- 1An eine Read Replica, mit Hinweis „kann verzögert sein“
- 2An den Primary, ohne Cache dazwischen
- 3An einen Cache, der nach jeder Überweisung invalidiert wird
Antwort zeigen
Richtige Antwort: An den Primary, ohne Cache dazwischen
Erklärung
Geld, das direkt nach einem Schreibvorgang gezeigt wird, muss diesen widerspiegeln, und der Primary ist der einzige Ort, der das garantiert. Eine Replica passt zu Listen und Historie, wo eine Sekunde Verzögerung harmlos ist. Ein Cache mit Invalidierung passt zu oft gelesenen Daten mit seltenen Schreibvorgängen, aber eine verpasste Invalidierung zeigte hier einen falschen Kontostand, was mehr kostet als der zusätzliche Lesezugriff.