04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

52 Štúdie vybraných tém programových a informaných systémov<br />

biznis služby, ktoré už prijímajú udalosti ako správy a z vonku to naozaj funguje ako volanie<br />

služby.<br />

Vstupné<br />

adaptéry<br />

Biznis<br />

služby<br />

Biznis<br />

operácie<br />

Výstupné<br />

adaptéry<br />

Biznis<br />

procesy<br />

Vonkajšie udalosti<br />

Správy v systéme<br />

Obrázok 2-8. Prepojenie súiastok pomocou správ v systéme Ensemble.<br />

Biznis procesy realizujú celú prepojovaciu logiku a biznis operácie zabezpeujú spracovanie<br />

jednotlivých úloh. Výstupné adaptéry potom výsledné riešenie prispôsobia jednotlivým<br />

pripojeným systémom.<br />

Celé riešenie je založené na udalostiach, posielaných prostredníctvom správ. Všetky<br />

prepojenia je tak možné nezávisle meni, pridáva a ubera. Tento prístup tak umožuje<br />

nielen rýchlu integráciu ale aj efektívnu údržbu celého prostredia.<br />

2.3 CORBA<br />

Významným problémom, ktorý musí by pri vývoji distribuovaných aplikácií vyriešený, je<br />

otázka vzájomnej komunikácie jednotlivých astí takýchto aplikácií. Predstavme si napríklad,<br />

že v module A vytváranej aplikácie potrebujeme zavola funkciu modulu B, ktorý je<br />

vykonávaný na inom poítai než modul A, a získa spä výsledok tohto volania. Nech<br />

volaná funkcia je add s dvoma celoíselnými parametrami. Napriek výhodám vyššieuvedeného<br />

prístupu založeného na udalostiach sa rozhodneme použi mechanizmus pripomínajúci<br />

tradiné synchrónne volanie procedúry. Otázkou však je – ako ho implementova?<br />

Jednou z možností je použitie štandardných programovacích rozhraní k službám sie-<br />

ových komunikaných protokolov, ako je napríklad Berkeley Sockets API pre rodinu protokolov<br />

TCP/IP. Výhodou týchto rozhraní je ich univerzálna dostupnos, nakoko sú<br />

k dispozícii prakticky pre všetky operané systémy; ich hlavnou nevýhodou je pomerne<br />

nízka úrove abstrakcie, z ktorej vyplýva najmä nutnos vytvárania väšieho množstva<br />

kódu potrebného na ich použitie. V našom prípade by sme museli na strane modulu A<br />

naprogramova nasledujúce kroky:<br />

1. otvorenie spojenia – volaním funkcií gethostbyname, socket, connect,<br />

2. príprava správy – vytvorenie balíka údajov obsahujúceho napríklad informácie<br />

„add“, 20, 30 (t.j. názov funkcie a jej parametre),<br />

3. poslanie správy – volaním funkcie write,<br />

4. preítanie odpovede – volaním funkcie read,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!