
Në AI Effect Studio, përdoruesit zgjedhin një efekt, ngarkojnë fotografi dhe marrin një video të shkurtër. Por skadimi i afatit të një kërkese nuk provon se gjenerimi ka dështuar: ofruesi mund ta ketë nisur punën pa ia kthyer serverit identifikuesin e detyrës. Ridërgimi mund të krijojë një detyrë tjetër me pagesë, nëse ofruesi nuk mbështet një mekanizëm të dokumentuar idempotence.
Për të shmangur pagesat e dyfishta, sistemi regjistron në bazën e të dhënave kohën e tentativës përpara thirrjes së API-së. Nëse ekziston një identifikues, kontrollon detyrën përkatëse. Nëse ka shënim dorëzimi, por jo identifikues, e mban punën për shqyrtim nga mbështetja. Përditësimet me kushte dhe rezervimi afatshkurtër i punës kufizojnë përpunimin paralel nga procese të ndryshme.
Kjo qasje ka një kompromis: nëse procesi ndalet pas regjistrimit, por përpara dërgimit, puna pret shqyrtim edhe nëse kërkesa nuk ka mbërritur te ofruesi. Autori e pranon këtë për hapin e kushtueshëm të gjenerimit, por thekson se një çelës idempotence nga ofruesi do ta zgjidhte më mirë problemin.
Rikuperimi synon vetëm fazën që ka dështuar. Sistemi ruan URL-në e videos, që një dështim gjatë ruajtjes të mos kërkojë gjenerim të ri. Hapi i shtimit të kolonës zanore, shumë më i lirë, ka një numër të kufizuar riprovash.
Burimi: DEV Community (Web Dev Feed) — lexoni artikullin e plotë në anglisht.

