Předmět: Distribuované programování

» Seznam fakult » FM » NTI
Název předmětu Distribuované programování
Kód předmětu NTI/DPG
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Magisterský
Rok studia nespecifikován
Semestr Letní
Počet ECTS kreditů 5
Vyučovací jazyk Čeština
Statut předmětu Povinně-volitelný
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Dostupnost předmětu Předmět je nabízen přijíždějícím studentům
Vyučující
  • Hybš Jan, Ing.
  • Kopetschke Igor, Ing.
Obsah předmětu
1. Úvod do předmětu, základní pojmy a klasifikace paralelních systémů, Gustafsonův a Amdahlův zákon 2. Architektury paralelních systémů, SW prostředky pro vývoj, dekompozice 3. Problematika vláken, synchronizace paralelních procesů 4. Nástroje a knihovny pro vývoj distribuovaných aplikací 5. Message Passing Interface - úvod, teorie, základy práce 6. Message Passing Interface - validní příjem zpráv, blokujíci a neblokující operace 7. Message Passing Interface - přehled metod pro paralelní zpracování náročných úloh, distribuce a sběr dat 8. Distribuované architektury klient - server, dělby práce, peer - to -peer 9. Úvod do webových služeb - REST, SOAP 10. Webová služba REST - podrobnější popis implementace, předávání dat, serializace, externalizace, transient 11. Webová služba REST na aplikačním serveru 12. Webová služba REST + aplikační server + autentizace, perzistentní propojení s DB a další praktická řešení

Studijní aktivity a metody výuky
Monologický výklad (přednáška, prezentace, vysvětlování)
  • Účast na výuce - 40 hodin za semestr
Výstupy z učení
Předmět poskytne studentům základní znalosti a dovednosti potřebné pro programování distribuovaných aplikací. Zaměřuje se jak na distribuované výpočetní systémy (klastry), tak na síťové aplikace využívající přenosové protokoly TCP/IP. Studenti se seznámí se základními koncepty vytváření distribuovaných aplikací i s praktickým použitím nástrojů a knihoven dostupných pro tyto účely.
Při úspěšném zvládnutí předmětu student získá základní znalosti programování distribuovaných aplikací, a to jak v kontextu aplikací klient - server, peer - to - peer, tak v kontextu pseudoparalelních a paralelních aplikací. Dále student získá základní znalosti a techniky v práci s clusterem.
Předpoklady
Nespecifikováno

Hodnoticí metody a kritéria
Kombinovaná zkouška

Doporučená literatura
  • BURNS, Brendan. Designing distributed systems: patterns and paradigms for scalable, reliable services. O'Reilly Media. Sebastopol, CA, 2018. ISBN 9781491983645.
  • PAS, Ruud van der. Using OpenMP--the next step: affinity, accelerators, tasking, and SIMD. The MIT Press. Cambridge, Massachusetts, 2017. ISBN 978-0262534789.
  • ZHANG, Liang-Jie a Yishuang NING. Innovative solutions and applications of web services technology. IGI Global. Hershey, PA, 2019. ISBN 978-1522572688.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr
Fakulta: Fakulta mechatroniky, informatiky a mezioborových studií Studijní plán (Verze): Informační technologie (2013) Kategorie: Informatické obory 2 Doporučený ročník:2, Doporučený semestr: Letní