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

Jeden komentář

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.