Cílem diplomové práce je vytvoření nástroje pro monitorování většího množství Mon-goDB instancí. V teoretické části se práce zabývá rešerší dostupnosti informací ke sledo-vání v MongoDB. Následuje popis asynchronního programování v jazyce PHP, postupná integrace a tvorba grafického rozhraní. V praktické části se práce zabývá analýzou poža-davků na monitorovací nástroj, využití frameworku Icicle a navrhuje komunikaci pomocí WebSocketů. V další části se pak zabývá použitím integračních nástrojů Travis CI a Scru-tinizer CI a realizací grafického rozhraní v ReactJS. V případové studii je popsán způsob nasazení do produkčního prostředí využitím Docker kontejnerů, Docker Cloudu a Amazon Web Services. V poslední části se práce věnuje zabezpečení aplikace.
Anotace v angličtině
The aim of this thesis is to build a tool for monitoring multiple instances of MongoDB. The theoretical part deals with the retrieval of possible available information to monitor MongoDB. Following part is a description of asynchronous programming in PHP, conti-nuous integration and graphical interface. In the practical part thesis analyzes the require-ments for monitoring utility usage and propose a framework Icicle and suggest a commu-nication via WebSockets. The next section deals with integration tools Travis CI and CI Scrutinizer and implementation of graphical user interface in ReactJS. The case study describes a deployment method to production environments using Docker containers, Doc-ker Cloud and Amazon Web Services. The last part deals with application security.
Cílem diplomové práce je vytvoření nástroje pro monitorování většího množství Mon-goDB instancí. V teoretické části se práce zabývá rešerší dostupnosti informací ke sledo-vání v MongoDB. Následuje popis asynchronního programování v jazyce PHP, postupná integrace a tvorba grafického rozhraní. V praktické části se práce zabývá analýzou poža-davků na monitorovací nástroj, využití frameworku Icicle a navrhuje komunikaci pomocí WebSocketů. V další části se pak zabývá použitím integračních nástrojů Travis CI a Scru-tinizer CI a realizací grafického rozhraní v ReactJS. V případové studii je popsán způsob nasazení do produkčního prostředí využitím Docker kontejnerů, Docker Cloudu a Amazon Web Services. V poslední části se práce věnuje zabezpečení aplikace.
Anotace v angličtině
The aim of this thesis is to build a tool for monitoring multiple instances of MongoDB. The theoretical part deals with the retrieval of possible available information to monitor MongoDB. Following part is a description of asynchronous programming in PHP, conti-nuous integration and graphical interface. In the practical part thesis analyzes the require-ments for monitoring utility usage and propose a framework Icicle and suggest a commu-nication via WebSockets. The next section deals with integration tools Travis CI and CI Scrutinizer and implementation of graphical user interface in ReactJS. The case study describes a deployment method to production environments using Docker containers, Doc-ker Cloud and Amazon Web Services. The last part deals with application security.
Proveďte rešerši možnosti monitoringu databáze MongoDB.
Analyzujte požadavky na monitorovací nástroj.
Proveďte návrh a analýzu vhodné architektury pro aplikaci.
Navrhněte aplikaci sloužící k monitoringu databází.
Realizujte prototyp aplikace.
Věnujte pozornost zabezpečení aplikace a přenášených dat.
Popište formou případové studie nasazení monitorovací aplikace.
Zásady pro vypracování
Proveďte rešerši možnosti monitoringu databáze MongoDB.
Analyzujte požadavky na monitorovací nástroj.
Proveďte návrh a analýzu vhodné architektury pro aplikaci.
Navrhněte aplikaci sloužící k monitoringu databází.
Realizujte prototyp aplikace.
Věnujte pozornost zabezpečení aplikace a přenášených dat.
Popište formou případové studie nasazení monitorovací aplikace.
Seznam doporučené literatury
CHODOROW, Kristina. MongoDB: the definitive guide. 2nd ed. Sebastopol: O\symbol{39}Reilly, 2013, xix, 409 s. ISBN 978-1-4493-4468-9.
Practical mongodb: architecting, developing, and administering MongoDB. New York, NY: Springer Science+Business Media, 2015, pages cm. ISBN 9781484206485.
NIALL O\symbol{39}HIGGINS. MongoDB and Python. Farnham: O\symbol{39}Reilly, 2011. ISBN 9781449310370.
FOWLER, Martin. Destilované UML. 1. vyd. Praha: Grada, 2009, 173 s. Knihovna programátora (Grada). ISBN 978-80-247-2062-3.
BONNET, Laurent, et al. Reduce, you say: What nosql can do for data aggregation and bi in large repositories. In: Database and Expert Systems Applications (DEXA), 2011 22nd International Workshop on. IEEE, 2011. p. 483-488.
VRÁNA, Jakub. 1001 tipů a triků pro PHP. Vyd. 1. Brno: Computer Press, 2010, 456 s. ISBN 978-80-251-2940-1.
MITCHELL, Lorna Jane. PHP web services : \matsymb{lbrack}APIs for the modern web\matsymb{rbrack}. First edition. Beijing: O\symbol{39}Reilly Media, 2013, x, 104 pages. ISBN 9781449356569.
Seznam doporučené literatury
CHODOROW, Kristina. MongoDB: the definitive guide. 2nd ed. Sebastopol: O\symbol{39}Reilly, 2013, xix, 409 s. ISBN 978-1-4493-4468-9.
Practical mongodb: architecting, developing, and administering MongoDB. New York, NY: Springer Science+Business Media, 2015, pages cm. ISBN 9781484206485.
NIALL O\symbol{39}HIGGINS. MongoDB and Python. Farnham: O\symbol{39}Reilly, 2011. ISBN 9781449310370.
FOWLER, Martin. Destilované UML. 1. vyd. Praha: Grada, 2009, 173 s. Knihovna programátora (Grada). ISBN 978-80-247-2062-3.
BONNET, Laurent, et al. Reduce, you say: What nosql can do for data aggregation and bi in large repositories. In: Database and Expert Systems Applications (DEXA), 2011 22nd International Workshop on. IEEE, 2011. p. 483-488.
VRÁNA, Jakub. 1001 tipů a triků pro PHP. Vyd. 1. Brno: Computer Press, 2010, 456 s. ISBN 978-80-251-2940-1.
MITCHELL, Lorna Jane. PHP web services : \matsymb{lbrack}APIs for the modern web\matsymb{rbrack}. First edition. Beijing: O\symbol{39}Reilly Media, 2013, x, 104 pages. ISBN 9781449356569.
Přílohy volně vložené
1 DVD
Přílohy vázané v práci
-
Převzato z knihovny
Ne
Plný text práce
Přílohy
Posudek(y) oponenta
Hodnocení vedoucího
Záznam průběhu obhajoby
Diplomant odprezentoval před komisí hlavní cíle a výsledky své diplomové práce. Součástí prezentace nebyla praktická ukázka. Následně byl student seznámen s posudky vedoucího a oponenta diplomové práce. Diplomant postupně odpověděl na otázky oponenta práce.
Komise během diskuze vznesla k obhajobě následující dotazy:
1. Můžete říct, k jakým aplikacím je vaše práce vhodná? (doc. Šenkeřík)
2. Lze do systému implementovat inteligentní dotazování? (doc. Šenkeřík)
3. Zkoušel jste zjistit horní hranici pro testování? (Dr. Martinek)
4. Jste schopen odhadnout, k jakým hodnotám lze dospět při testování? (Dr. Martinek)
Student na položené dotazy reagoval pohotově a zodpověděl je v plném rozsahu.