Integrace na aplikační vrstvě, SOA.
Thursday, May 30, 2013
8:11 AM
Integrace na aplikační vrstvě
Služba
Služba je dobře definovaná a vymezená funkcionalita, která je zcela zapouzdřená a nezávislá na svém okolí (stavu ostatních služeb).
Web services
Univerzální a platformně nezávislý způsob propojení na bázi XML. 
SOAP = Simple Object Access Protocol = nejběžnější způsob, jakým mezi sebou služby komunikují
WSDL = Web Services Description Language – popis rozhraní služby
Ws-gateways, ESB = metodiky propojování služeb
ESB
Enterprise Service Bus = koncept sběrnice služeb, místo propojování všeho se vším vytvoříme sběrnici, ke které vše připojíme. Komponenty (služby) totiž obvykle komunikují jeden s jedním a tvorba dvoubodových spojení pak vede časem k chaosu. ESB vytváří jakousi P2P síť. Jedná se o protokolově nezávislý způsob, jak vyvolat službu. Přijímá požadavky od WS klientů, zjistí, co s nimi má dělat, kam je předat, postará se o implementační detaily => ESB je implementací SOA.
Přínosy
Úspora nákladů, dle statistik 30-40%, ale ne hned. Umožnění podnikům flexibilně reagovat na změnu, lépe zarovnat potřeby IT a business – k tomu nestačí jen web services, ale je potřeba mít i jiné prvky infrastruktury (middleware). ESB jako propojení služeb, Portál jako vhodné místo pro interakci uživatelů se službami.
Služby jsou platformově i technologicky nezávislé
Zjednodušuje využití ICT
Umožňuje inkrementální nasazení
Má schopnost rychle adoptovat změny (rychlost = úspora)
Podporuje podnikání v reálném čase
Jako vedlejší efekt přináší znovupoužitelnost služeb
SOA
Servisně orientovaná architektura (SOA) je soubor služeb, které jsou nějak spolu propojeny a vzájemně komunikují. 
IS komunikují s jinými IS, spolupracují mezi sebou – aby mohly být používány rozumně, musí spolupracovat podobně jako služby reálného světa, tj. asynchronně reagovat na požadavky z různých zdrojů a být použity jako černé skříňky. SOA je navržena aby propojila mezi sebou libovolné služby.
Vývojový cyklus SOA: Posun od kódování ke skládání, Model -> Assemble -> Deploy -> Manage
From <[link]> 