Webhosting (2 kB)

Použití architektury COM v distribuovaných aplikacích

Obsahem práce je praktický popis vývoje distribuovaných aplikací na architektuře COM. Práce je založena na postupném vývoji ukázkové aplikace "Klíčky", které je subsystémem IS Esa, využívaného na počítačových učebnách Vysoké školy ekonomické v Praze. Cílem je zjistit, jestli je možné pomocí funkcí a schopností architektury COM dostát všem nárokům, které vyvíjený informační systém požaduje. Dalším záměrem je nalézt obecné řešení typických problémů většiny distribuovaných systémů.

V úvodní části jsou pomocí požadovaných funkcí a chování aplikace "Klíčky" specifikovány nároky na architekturu. Mezi ně patří zejména: dostatečná rychlost odezvy, obsluha více klientů zároveň, více-vláknová (multithreading) obsluha požadavků, řízení zdrojů (databázových spojení...), řešení problému výpadku spojení mezi klientem a serverem, přenos velkého množství dat, zajištění bezpečnosti přenosu dat a autorizace, volání klienta serverem (události), propojení s jinými systémy (webový server).

Ve třetí kapitole je provedena analýza. Nejdůležitější částí je popis funkcí systému, ze kterého bude vycházet definice rozhraní serveru.

Na analýzu navazuje ve čtvrté a nejrozsáhlejší části vlastní vývoj systému. Vývoj je prováděn inkrementálně. V každé části je hledáno řešení jednoho z určených požadavků. Tím se zároveň rozšiřuje systém o novou funkci. Ty jsou vybrány tak, aby byla pro jejich implementaci použita vždy jiná funkce architektury COM. Na jednoduchých (ale funkčních) ukázkách kódu v jazyce Object Pascal vývojového prostředí Borland Delphi 5 je názorně předvedeno použití těchto funkcí. Zároveň jsou vždy zmíněna úskalí s nimi spojená.

Pátá kapitola obsahuje výsledky několika zátěžových testů, které se soustřeďují zejména na rychlost odezvy v nejrůznějších extrémních situacích. Z nich je usuzováno na schopnost architektury splnit výkonnostní požadavky na systém.

V závěru jsou opět shrnuty nároky definované na začátku práce. U každého z nich je zhodnoceno, jak úspěšně byl problém vyřešen, případně je poukázáno na problémy, které nejsou pomocí architektury COM řešitelné nebo jejichž řešení je příliš složité.

Navigace