IOSOR Žinios

Antras atsarginis kelias: perdavimas be dvigubo debeto

Sužinokite, kaip suderinti dvigubus perjungimo valdiklius tarp maršrutizavimo ir operacijų komandų be dubliuotų balansų.

Antras atsarginis kelias: perdavimas be dvigubo debeto.

Nuosavybės konfliktas vykdant dvigubą perjungimą

Kai aukštesnio lygio operatorius nustoja patvirtinti žinutes, dvi skirtingos komandos skuba gelbėti pristatymą. Maršrutizavimo stebėsena pastebi vėlavimą ir perjungia kanalą. Tuo metu operacijų komanda peržiūri Perjungimo operacijų vadovas, kai srautas jau yra aktyvus ir priverstinai aktyvina antrinį maršrutą. Be aiškios RACI matricos, abi sistemos bando stumti eilę per du adapterius vienu metu.

Dvigubo debeto pavojus pakartojimams

Kai abi sistemos suveikia iš karto, vartotojai gauna dvigubus OTP arba SMS pranešimus. Balanso knyga rizikuoja nurašyti nuomininko sąskaitą dukart už vieną bandymą. Apsaugoti USD 20 indėlio grindis reikalauja griežtų transakcijų blokavimo priemonių. Jei A kanalas laiko balansą, o B siunčia iš naujo, finansinis suderinimas žlunga, nebent kiekvienas pranešimas turi nekeičiamą tokeną.

Atominiai kanalo perdavimo protokolai

Kad būtų išvengta lenktynių sąlygų, variklis privalo išlaikyti išskirtinę prieigą per perjungimo įvykį. Keičiant kanalus, sistema išduoda JIT rezervaciją antriniame šliuze ir atleidžia pirminį. Tai garantuoja Dalinis perjungimas be dvigubo mokesčio scenarijus, net jei pirminio operatoriaus DLR vėluoja kelias minutes.

Viršelio žymės ir sinchronizavimo spynos

Sinchronizavimo spynos veikia duomenų bazės eilučių lygyje. Prieš darbuotojui išsiunčiant partiją, jis patikrina redis spyną kampanijai. Jei pirminis siuntėjas jau paėmė tokeną, antrasis signalas iš karto sustoja. Didesnio masto paskyroms, pasiekiančioms USD 1,000/mėn. ribą, šios spynos apsaugo nuo ciklų, kurie galėtų greitai ištuštinti balansą.

Webhook dubliavimo šalinimas perjungimo metu

Kanalų keitimas dažnai sukelia dubliuotus pranešimus, nes abu keliai išvalo savo buferius. Programos turi patikrinti įvykių ID talpykloje. Dėl gilesnių modelių, peržiūrėkite Pasikartojantis webhook neturi sukurti antro debeto dokumentaciją, kad sąskaitų suderinimas būtų idealus.

Pradėkite nuo IOSOR patikimam maršrutizavimui

Įvardykite vieną asmenį, kuriam leidžiama apversti antrą bėgį. Per hop užrakinkite intent, nuimkite hold nuo pirminio ir atidarykite vieną JIT rezervą atsarginiame — tas pats intent, išimtinis rašymas. Jei sveikatos monitorius ir budėtojas iššauna kartu, antras gaidukas atšaukiamas. Perdavimas yra įvardytas savininkas plius spyna, ne platesnis RATE ir ne antras debetas.

IOSOR santrauka

Antro bėgio perdavimas miršta, kai du žmonės verčia tą patį intent.

Darykite: įvardykite kas verčia ir atšaukite antrą gaiduką.

Nedarykite: leisti monitoriui ir pranešėjui kartu stumti atsarginį.

Ar šis vadovas buvo naudingas?

Susiję vadovai