2. GraphQL prenumerata
Sekos diagrama, skirta GraphQL prenumeratoriams, iliustruoja, kaip pasinaudoti įvykių varoma architektūra, įdiegta GeoPard branduolyje. Kai tik susijusiuose objektuose įvyksta kokie nors pakeitimai,
GeoPard API nedelsdama išsiunčia įvykį, fiksuojantį paveiktus objektus ir atitinkamą operaciją (ĮTERPTI, PAKEISTI, PAŠALINTI). Šių prenumeratų apimtis yra plati — apima visus objektus, pavyzdžiui, Ūkis (Farm), Laukas (Field), PalydovinėNuotrauka (SatelliteImage), DirvožemioDuomenųRinkinys (SoilDataset), TaikomasDuomenųRinkinys (AsAppliedDataset), DerliausDuomenųRinkinys (YieldDataset), TopografijosŽemėlapis (TopographyMap), Pastabos (Notes) ir kt.
GraphQL prenumerata (Užklausa 1 arba R1) veikia per WebSocket, kuriuo visi įvykiai perduodami beveik realiu laiku, užtikrinant nedelsiamą bet kokių pakeitimų pranešimą.
Prenumeratos įvykių gavėjas turėtų veikti kaip bazinė paslauga, atsakinga už gautų įvykių maršrutizavimą į tolimesnę paslaugą, kurioje taikoma apdorojimo logika. Svarbu, kad šis gavėjas pats neatliktų jokio apdorojimo.
Be to, jei kokie nors įvykiai būtų praleisti arba prarasti, vartotojai gali juos atkurti. Tai atliekama vykdant GraphQL užklausą, pritaikytą konkrečiam datų intervalui ir objektams (Vartotojas, Ūkis, Laukas), efektyviai leidžiant visiškai atkurti praeitus įvykius (Užklausa 2 arba R2). Toks funkcionalumas užtikrina, kad jokia informacija nebūtų prarasta, išlaikant vartotojo duomenų vientisumą ir nuoseklumą.

Last updated
Was this helpful?