2. Subskrypcja GraphQL
Diagram sekwencji dla subskrypcji GraphQL ilustruje, jak skorzystać z architektury zdarzeniowej zaimplementowanej w rdzeniu GeoPard. Po jakichkolwiek zmianach powiązanych obiektów,
API GeoPard natychmiast emituje zdarzenie rejestrujące dotknięte obiekty oraz odpowiadającą operację (DODANO, ZMODYFIKOWANO, USUNIĘTO). Zakres tych subskrypcji jest szeroki, obejmując wszystkie obiekty, takie jak Farm (gospodarstwo), Field (pole), SatelliteImage (zdjęcie satelitarne), SoilDataset (zestaw danych glebowych), AsAppliedDataset (zestaw danych wykonania zabiegu), YieldDataset (zestaw danych o plonie), TopographyMap (mapa topograficzna), Notes (notatki) itp.
Subskrypcja GraphQL (Żądanie 1 lub R1) działa przez WebSocket, gdzie wszystkie zdarzenia są dostarczane w niemal rzeczywistym czasie, zapewniając natychmiastową komunikację o wszelkich zmianach.
Odbiorca zdarzeń subskrypcji powinien działać jako podstawowa usługa odpowiedzialna za przekierowywanie otrzymanych zdarzeń do kolejnej usługi, gdzie stosowana jest logika przetwarzania. Kluczowe jest, aby ten odbiorca nie wykonywał sam żadnych zadań przetwarzających.
Co więcej, w przypadku pominiętych lub utraconych zdarzeń użytkownicy mają możliwość ich odzyskania. Dokonuje się tego poprzez wykonanie zapytania GraphQL dopasowanego do określonego zakresu dat i obiektów (User, Farm, Field), co skutecznie umożliwia pełne odtworzenie przeszłych zdarzeń (Żądanie 2 lub R2). Ten poziom funkcjonalności zapewnia, że żadna informacja nie zostanie utracona, utrzymując integralność i spójność danych użytkownika.

Last updated
Was this helpful?