Sobes.tech
Middle+

5. Fizetési megbízhatóság: "Hogyan oldódott meg az idempotencia kérdése a gRPC-ben?" Interjúztató célja: A fizetések — a legveszélyesebb terület a duplikátumok (Double Spending) szempontjából. Lehetséges kérdés: "A fizetési kérés gRPC-n keresztül ment, de időkorlát (DEADLINE_EXCEEDED) miatt sikertelen volt. A pénz levonásra került — ismeretlen. Mit csinál a fizetési modul?" Hogyan válaszoljunk: "Egy pénzügyi tranzakciós kontextusban minden ismétlődő kérésnek rendelkeznie kell egy Idempotency Key-vel: 1. A gRPC kérés metaadataiban (metadata=((‘x-idempotency-key’, key_uuid),)) mindig egyedi tranzakciós kulcsot továbbítottunk. 2. Amikor DEADLINE_EXCEEDED-et kapunk, a kliens biztonságosan újra próbálkozhat ugyanazzal a kulccsal. 3. A beszerzési szolgáltatás ellenőrizte ennek a kulcsnak a jelenlétét saját adatbázisában / Redis-ben, és vagy visszaadta a már feldolgozott tranzakció állapotát, vagy első alkalommal dolgozta fel azt."