190 likes | 349 Views
Enterprise Service Bus. ESB. Sr đan Krstić 12615 Miloš Stošić 12790. Integracija aplikacija. SOA – Service Oriented Architecture.
E N D
Enterprise Service Bus ESB Srđan Krstić 12615 Miloš Stošić 12790
SOA – Service Oriented Architecture • Osnovnikonceptovetehnologije je u tome da se softverskisistemiučinemanjekompleksnim, krozpakovanjekoda u servisekojiimplementirajujednostavneusluge • Ovim se eliminišeredundantnost (Copy-Paste rešenja), kojapredstavljanajvećumanudosadašnjegradanaprojektovanjusoftvera • Aplikacijepostajuplatformesaodređenim skupom servisa na kojima će se zasnivati budući servisi
Bazičniprincipikojidefinišu servisno orijentisanearhitekturesu: • Mogućnostponovneupotrebekoda • Granularnost • Modularnost • Skladnostsastandardima • Pravilnooznačavanje i kategorizacijaservisa
Da bi se u određenom sektoru uspostavio SOA,potrebna je tesna saradnja dve potpuno razdvojene celine: IT Sektora i Menadžmenta • Što često dovodi do problema...
WOA – Web Oriented Architecture • Zajednička platforma za najuspešnije implementacije servisno orijentisanihaplikacija je WEB • Uzpomoćoveplatformedobija se novipristupprojektovanju SOA, a to je Web-orijentisanaarhitekturailiWOA
Osnovnekarakteristikejednog WOA sistemasu: • Informacijeunutar WOA predstavljenesu u oblikuresursa i pristupaim se pomoćuprotokola • Svakomresursunamreži moguće je pristupitipomoćujedinstveneglobalneadrese (URI) • Manipulacijaresursa (REST tehnika) • Pristupmorabitislojevit • Usklađivanje sastandardima je implicitno • WOA resursimogusadržati unutarsebedruge URI-je, i natajnačinpravegranularnumrežuresursa(naliknapokazivače u programiranju)
ESB – Enterprise Service Bus • Pojam ESB ima dvojako značenje: - predstavlja arhitekturni stil - predstavlja softverski proizvod
ESB kao Arhitekturni stil • Sistemi koji koriste ESB imaju logičku topologiju magistrale • Sastoje se od: - magistrale - čvorova - poruka • Sve pojedinačne aplikacije sistema (čvorovi) koje pružaju servise celokupnom sistemu su povezane na zajedničku magistralu i komuniciraju pomoću poruka univerzalnog formata
ESB kao Softverski proizvod • Sa fizičkog aspekta ESB je softverski proizvod koji interaguje sa pojedinačnim aplikacijama i pruža im jedinsveni interfejs za komunikaciju
Implementacija ESB • Postoji puno Open Source ESB softvera • Jedan od njih je i Mule ESB • Jedna od specifičnosti Mule ESB-a je to da se poruke između čvorova transformišu samo po potrebi i ne postoji univerzalni format poruke
Echo Primer • Servisna komponenta package org.mule.components.simple; public class EchoComponent { publicString echo(String echo) { return echo; } }
Echo Primer • Konfigurisanje servisa <service name="EchoUMO"> <component class="org.mule.component.simple.EchoComponent"/> </service>
Echo Primer • Konfigurisanje rutiranja <mule> <model name="echoSample"> <service name="EchoUMO"> <inbound> <stdio:inbound-endpoint system="IN"/> <vm:inbound-endpoint path="echo"/> </inbound> <echo-component/> <outbound> <pass-through-router> <stdio:outbound-endpoint system="OUT"/> </pass-through-router> </outbound> </service> </model> </mule>
Echo Primer • Predefinisanje standardnog ulaza <stdio:connectorname="SystemStreamConnector" promptMessage="Please enter something: “MessageDelayTime="1000“ />
Echo Primer • Podešavanje servisa za Web <axis:inbound-endpoint address="http://localhost:65081/services"> <soap:http-to-soap-request-transformer/> </axis:inbound-endpoint>