Jak můžete detekovat chyby v systému pomocí Data-Distribution Service™?

Distribuované systémy jsou charakteristické tím, že u nich dochází k částečným selhání částí systému na straně uzlu nebo na straně sítě.

My potřebujeme, aby náš distribuovaný systém dokázal detekovat selhání abychom byli schopni na tyto chyby reagovat a z chybového stavů se co nejdříve zotavit. Řešením je monitorování stavu systému nástroji, jako je například Prometheus.

V tomto videu🎞️👇 se podíváme na to, jak se to řeší u technologie DDS®🌀.

Technologie DDS poskytuje množinu 22 QoS parametrů. Pro detekci výpadků jsou vhodné dva:

1️⃣ Liveliness: Pomocí vyhledávání DDS aplikací jsme schopni zjišťovat přítomnost DDS aplikací v systému. Jsou proto použity tři parametry:

👉 Assert Period: DDS aplikace ohlašují svoji přítomnost všem ostatním aplikacím v uživatelem definovaném intervalu (např. 15 sekund).

👉 Lease Duration: Parametr, který zasílám okolním aplikacím, které mě označí za neaktivního po uplynutí tohoto časového intervalu, když se jim nenahlásím, že jsem aktivní (např. 45 sekund).

👉 Loss Detection Period: Časový interval, který určuje, jak často zjišťuji, že je vzdálená aplikace ještě aktivní (např. 5 sekund)

2️⃣ Deadline: Pomocí tohoto parametru, jsme schopni ověřovat potřebné výkonové parametry systému. Protože nejsme schopni zaručit doručení dat v distribuovaném systému, když víme, že dochází k částečným výpadkům.

👉 Jsme tak schopni určit:

      • jak často bude poskytovatel zapisovat periodická data
      • jak často potřebuje příjemce dat přijímat data.

👉 V případě výpadku a tedy v případě, že nejsou tyto intervaly dodrženy, je o tom aplikace informována. Jsme tak schopni detekovat problémy s výkonem, ale také třeba nedostupnost poskytovatele periodických dat.

S těmito dvěma parametry pak souvisí třetí QoS parametr

👉 Ownership: Tímto parametrem jsme schopni určit, zdali budeme přijímat data od všech poskytovatelů datového streamu, nebo pouze od jednoho. K čemu je to dobré?

  • V případě že zvolíme pouze od jednoho, tak příjemce přijímá data pouze od toho poskytovatele, kterému jsme určili nejvyšší váhu.
  • V případě, že dojde k výpadku tohoto poskytovatele, z důvodu nedodržení parametru Liveliness nebo Deadline, je automaticky nahrazen poskytovatelem s nižší váhou (když existuje). Máme tedy zajištěn Failover.

Kromě toho implementátoři technologie DDS přidávají do svých produktů možnosti pro monitorování sítě. Jako např. zjištění latence, throughputu, odeslaných/přijatých paketů, ztracených paketů, znovu odeslaných paketů.

Technologie DDS tedy zjednodušuje sdílení dat mezi aplikacemi, protože překrývá detaily komunikace přes síť a umožňuje detekovat chyby a zotavit se z nich.

Jak detekujete výpadky ve vašem systému?

DDS®, Data-Distribution Service™, DDSI-RTPS™ are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.

PP
Author: PP

Podobné příspěvky

  • Message-centric nebo Data-centric?

    Když potřebujete přenášet data mezi aplikacemi a zařízeními v distribuovaném prostředí tak napřed zvolíte způsob komunikace pro danou část systému:👉 Point to point, 👉 Client-Server 👉 Publish-Subscribe Aby jste usnadnili komunikaci mezi komponentami systému, tak si zvolíte technologii nebo aplikační protokol pro komunikaci. Např. MQTT, RESTFull HTTP, gRPC, AMQP, CoAP, DDS, Kafka a další. Ale…

  • Jak zvládá DDS®🌀 zahlcení daty

    Existují situace, kdy poskytovatelé dat generují tolik dat, že konzumenti nejsou schopni tolik dat zpracovat a jsou zahlcení daty. Konzumenti tedy omezují rychlost systému, protože nezvládají zpracovávat tolik dat a potřebují, aby poskytovatelé na ně tolik netlačili – snaží se vytvořit protitlak (backpressure). Tato situace může vést až ke kolapsu systému. V tomto videu vám…

  • Kde využít DDS – Cloud, Fog, Edge?

    Když se podíváme na systémy budované v rámci Internetu věcí z nadhledu, tak obsahují fyzická zařízení, komunikační brány a datová centra. Mezi všemi částmi systému je nutné efektivně přenášet a sdílet data. Je to z toho důvodu, že potřebujeme provádět👉 sběr dat/informací/znalostí,👉 uložení dat/informací/znalostí,👉 analýzu dat/informací/znalostí,👉 sdílení výsledků k uživatelům nebo zpět k zařízením. Moderní…

  • Co DDS usnadňuje? Část 1: Návrh

    Rozhodnutí o použití technologie v architektuře vašeho systému je potřeba dobře rozmyslet. Budete zvažovat, co vám technologie v systému umožní a na druhé straně, co vás bude její nasazení stát. Špatně zvolená technologie vám totiž z dlouhodobého hlediska může velmi prodražit cenu celého systému v průběhu jeho životního cyklu. Data Distribution Service™ (DDS) usnadňuje vytvoření…

  • Digital Twin a DDS™🌀

    V souvislosti s průmyslovým internetem věcí jste možná zaslechli pojem Digital Twin – digitální dvojče. V tomto videu se podíváme na to, co to digitální dvojče je, k jakým účelům slouží, a jak může technologie Data Distribution Service™ (DDS)🌀 pomoci s jeho vytvořením. Co je digitální dvojče🧑‍🤝‍🧑? • Já zde nebudu uvádět přesné definice, od…

  • DDS rodina standardu

    DDS 🌀 je plně decentralizovaná komunikační platforma (technologii) pro sdílení dat v reálném čase mezi různými zařízeními a aplikacemi s možností ovlivňovat parametry přenosu pomocí externí konfigurace (QoS). Tato technologie je založena na EDA – architektuře řízené událostmi a DCA – architektuře zaměřené na data. DDS je standardizovaná technologie, která je tvořena několika standardy. Z…

Jeden komentář

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *