Distribuovaný systém: Porovnání verzí

Smazaný obsah Přidaný obsah
ToMesh (diskuse | příspěvky)
Bez shrnutí editace
ToMesh (diskuse | příspěvky)
Doplneny odkazy.
Řádek 1:
Distribuovaný systém je takový systém ([[:cs:Software|softwarový]] systém, kolekce [[:cs:Procesor|procesorů]], atd.), ve kterém jsou jeho jednotlivé komponenty propojeny [[:cs:Počítačová_síť|sítí]]. Tyto komponenty pak mezi sebou komunikují pomocí posílání zpráv. Smyslem distribuovaného systému je spolupráce všech jeho komponent k dosažení nějakého společného cíle, případně koordinovat používání sdílených zdrojů mezi jednotlivými uživateli a poskytovat jim podporu v podobě komunikačního nástroje. Jednotlivé prvky systému se nazývají uzly.
 
Mezi nejčastější příklady distribuovaného systému, kromě počítačové sítě obecně, je [[:cs:SOA|Service Oriented Architecture]], [[:cs:MMORPG|Massive Multiplayer Online hry]], [[:cs:Peer-to-peer|peer-to-peer aplikace]], nebo specializované vědecké [[:cs:Distribuované_výpočty|distribuované výpočty]], na kterých pracuje nějaké skupina procesorů.
Řádek 12:
Důležitou vlastností systému je zachování jeho funkčnosti při výpadku jednoho nebo několika uzlů – zdroje, resp. úkoly jsou přerozděleny mezi ostatní uzly systému.
 
Struktura systému ([[:cs:Topologie_sítí|topologie]], počet uzlů nebo [[latence]]) nemusí (a často není) známa předem (tedy před jeho vytvořením). Tato struktura se také může měnit v čase běhu programu ( například počet uzlů se během času často mění).
 
Neméně zajímavou vlastností je to, že každý uzel zná jen část struktury distribuovaného systému (viz například dynamické směrování v Internetu).
Řádek 33:
Distribuované algoritmy jsou typicky prováděny souběžně. Různě oddělěné částmi algoritmu jsou spuštěny současně na samostatných procesorech které mají omezené informace o tom, co ostatní části algoritmu zrovna dělají. Jedním z hlavních problémů při vývoji a provádění distribuovaných algoritmů je úspěšně koordinovat chování nezávislých částí algoritmu tváří v tvář hrozbě selhání procesoru a nespolehlivého komunikační spojení. Volba vhodného distribuovaného algoritmu pro řešení daného problému tedy závisí na obou hrozbách.
 
Distribuovaný program je potom takový konkurentní (souběžný) program, který předpisuje, aby procesy komunikovaly výhradně prostřednictvím zasílání zpráv. Název je odvozen od faktu, že program je typicky prováděn v systému s distribuovanou pamětí. Distribuovaným výpočtem pak rozumíme realizaci distribuovaného algoritmu v distribuovaném výpočetním systému. Distribuovaný program implementovaný pomocí zasílání zpráv však může být prováděn i v multiprocesoru se sdílenou pamětí nebo dokonce i v systému s jediným procesorem pracujícím v [[:cs:Multitasking|multitaskingovém]] režimu
 
===== REFERENCE =====