1 / 20

Web szolgáltatások

Tartalom: Szolgáltatás-orientált architektúrák XML alapismeretek XML Schema alapismeretek SOAP alapismeretek WSDL alapismeretek UDDI alapok. Web szolgáltatások. A SOA (Service Oriented Architecture) egy architektúrális elv.

gabby
Download Presentation

Web szolgáltatások

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tartalom: Szolgáltatás-orientált architektúrák XML alapismeretek XML Schema alapismeretek SOAP alapismeretek WSDL alapismeretek UDDI alapok Web szolgáltatások

  2. A SOA (Service Oriented Architecture) egy architektúrális elv. A Web szolgáltatások technológia a SOA szabvány alapú, XML-központú megvalósítása. A SOA és a Web szolgáltatás technológia biztonságosan és megbízhatóan teszi lehetővé az üzleti műveletek kiszervezését. A munkamegosztásnak három szintje van: együttműködés: bizonyos tevékenységeket külső cégek végeznek, egyesülés: egyenrangú félként, együtt oldják meg a feladatot, megszerzés: ha fontos folyamatot kellene kihelyezni. A laza kapcsolat kizár bármiféle előzetes ismeretet vagy feltételezést aplatformokról, a formátumokról és az együttműködési protokollokról. A laza kapcsolat a SOA alapvető ismérve. Szolgáltatás-orientált architektúrák

  3. A Web szolgáltatás technológia az üzenetváltás elvére épül, így az igénylők és a szolgáltatók különböző platformokon futhatnak, melyeket csatornák kapcsolnak össze. A borítékok (wrappers) elrejtik a becsomagolt alkalmazás implementációs sajátosságait. A csatorna protokollok rejtettek a kommunikációs partnerek elől, a csatornán belül pedig különböző formátumokra való átalakítás is lehetséges. A WSDL (Web Services Description Language, Web szolgáltatás leíró nyelv) általánosan elfogadott, szabványos nyelv a szolgáltatás interfészének leírására, ami géppel is olvasható. A szolgáltatásokhoz üzleti vonatkozású adatok társulhatnak. Az UDDI (Universal Description, Discovery and Integration, Univerzális leírás, felderítés és integráció) katalógusa támogatja ezt a lehetőséget és lehetővé teszi információk tárolását és lekérdezését a szolgáltatást nyújtó társasággal kapcsolatban, pl. elérhetőségek, földrajzi adatok, stb. Ez lehetővé teszi a megfelelő szolgáltatás felderítését. Szolgáltatás-orientált architektúrák

  4. A funkcionális dekompozíció (függvények, szubrutinok) lehetővé tette a modularizációt. Az összetartozó függvények csomagja bonyolultabb feladatok megoldását segítette elő, de ez pusztán egy szintaktikus egység. Objektumok, osztályok. Az osztály az objektum viselkedését a probléma oldaláról is leírva szemantikai jellemzőket is tartalmaz. A polomorfizmus és az öröklődés a szoftver építés rugalmas eszköze. Az osztály hálók szemantikáját általában csak a fejlesztők értik. Ezzel szemben a szolgáltatásokat nemcsak az interfészeik írják le, hanem üzleti leírásuk is van, ami szélesebb közösség számára is érthető. A komponensek a felhasználással (bevetéssel) is foglalkoznak, így az alkalmazási logikára koncentrálhat a komponens szolgáltató. A komponens modell absztrakciója a szolgáltatás, ami a szoftvercsomagok fejlődésének újabb állomása. A szoftver szolgáltatások kialakulásának főbb állomásai

  5. A szolgáltatások modell értékes jellemzője, hogy a meglévő szolgáltatásokból újak hozhatók létre. A koreográfiának (choreography) nevezett technológia lehetővé teszi a meglévő szolgáltatások összeépítését és végrehajtásának összehangolását (orchestration). Az üzleti folyamat a szolgáltatások koreográfiája, amely megold egy komplex üzleti feladatot. A koreográfia meghatározza, hogy mely szolgáltatásokat, milyen sorrendben és milyen feltételekkel használjunk. A koreográfiák is egymásba ágyazhatók (rekurzió). A koreográfiák szolgáltatásokat használnak és az eredményt szolgáltatásként adják meg. A szoftver szolgáltatások kialakulásának főbb állomásai

  6. A SOA egy speciális architektúrális stílus, melyet a szolgáltatások laza kapcsolata és dinamikus kötése jellemez. A SOA hatékony működéséhez a következő nagyon fontos tényezők szükségesek: Először is szükséges a szolgáltatás absztrakt definíciója. Másodszor a szolgáltatást nyújtóknak közzé kell tenniük a szolgáltatásaik részleteit. Harmadszor az igénybevevőknek meg kell tudni találniuk a megfelelő szolgáltatást. Ahhoz, hogy ez kötés/közzététel/keresés megfelelően működjék szabványok szükségesek mindegyik műveletre. A szolgáltatás leíró információit a WSDL-lel és a politikával adjuk meg. A közzététel és a felderítés egy különálló regiszterrel (vagy katalógussal), mint amilyen az UDDI valósítható meg. A SOA főbb jellemzői

  7. A SOA főbb jellemzői Forrás: http://www.w3.org/TR/2002/WD-ws-arch-20021114/

  8. Ezt a körülményesnek tűnő folyamatot a szolgáltatás busznak (service bus) nevezett middleware egyszerűsítheti és átláthatóbbá teheti. Megjegyzendő, hogy a CORBA Trader szolgáltatásában a SOA bizonyos jellemzői megtalálhatóak, de ezek gyakran nem teljesek és a platform függetlenség tekintetében nem univerzálisak. A SOA implementálásának alapja a Web szolgáltatás technológia, és ennek központjában a service bus áll. A SOA főbb jellemzői

  9. A service bus magasszintű architektúrája, ami a SOA képességek stackje, a következő: A SOA főbb jellemzői

  10. Az legalsó réteg a szolgáltatás és az igénylő közötti kommunikáció különböző szállítási protokolljait jelenti. A szállítási réteg feletti üzenetküldő réteg lehetővé teszi, hogy a busz kezelni tudja az XML és a nem-XML üzeneteket is. A következő réteg lehetővé teszi és kezeli a szolgáltatás leírásokat a támogatott funkciók, ezen funkciók mínősége és a kötési mechanizmusok tekintetében. A tényleges szolgáltatási mínőségek, melyeket a szolgáltatási politika alapján a busz végrehajt, a következő rétegben foglalnak helyet. A legfelső réteg a Web szolgáltatások által képviselt különféle virtuális komponenseket ábrázolja. Egy további réteg pedig a szolgáltatások felderítését és leírásukat biztosítja. A SOA főbb jellemzői

  11. XML A Web szolgáltatások nagyon erősen épülnek az XML specifikációk központi elemeire. Az XML egy metanyelv, mellyel új nyelvek defíniálhatók. Az XML defíniciója paltform független és az Unicode-ot használja. Ezek miatt az XML-t gyakorlatilag minden szoftver gyártó támogatja, így az adatcsere de facto formátuma lett. Az elemeket hegyes zárójel segítségével írjuk le: <elemnév> és </elemnév> attribútumok: az attribútumok az elemhez társított név-érték párosok, számuk nem korlátozott, írásmódjuk: <elemnév attr1="érték1" attr2="érték2"...> A helyesen formázott doumentum érvényes, ha megfelel egy DTD vagy XML Schema, vagy valami egyéb szerkezet defíniáló nyelvnek. Háttér ismeretek rövid áttekintése

  12. DTD, XML schema A DTD-t az SGML dokumentumok szerkezetének deklarálására hozták létre. A DTD nyelv nem-XML szintaxisú nyelv az elemek nevének, egy másik elemen belülielőfordulási számának meghatározását, stb. teszi lehetővé. Az XML Schema-t a W3C (World Wide Web Consortium) fejlesztette ki dokumentum szerkezet és típus defíniálására. Az XML Schema XML szintaxist használ az XML szerkezet meghatározására, és lehetővé teszi adattípusok defíniálását is. Meghatároz egy sor elemi adattípust, amivel kijelölhetjük az attribútum és elem értékeket. A rekurzív típus konstruktorral pedig tetszőlegesen összetett adatszerkezetet hozhatunk létre. Az XML Schema széleskörű ipari támogatottságot élvez. Az XML névterek lehetővé teszik, hogy több XML nyelv összefésülésekor elkerüljük a névütközést. Háttér ismeretek rövid áttekintése

  13. XML Infoset Az XML Infoset az XML alapjait, információs modelljét határozza meg, azaz elvonatkoztat a hegyes zárójelektől. Az Infoset meghatározza az XML szintaktikai szerkezétének megfelelő információs tételeket. A következő fontos információs tételek léteznek: Elem információs tétel (Element Information Item, EII) Attribútum információs tétel (Attribute Information Item, AII) Karakter információs tétel (Character Information Item, CII) Az XML tényleges hatása az Infoset szinten nyugszik. A hegyes zárójeles megjelenítés válójában az Infoset szerializációja, melynek két példája az XML 1.0 és az XML 1.1. Háttér ismeretek rövid áttekintése

  14. A W3C szerint: A Web szolgáltatás olyan szoftver rendszer, melyet arra terveztek, hogy támogassa az együttműködőképes gép-gép közötti egymásrahatást egy hálózaton. Rendelkezik egy géppel feldolgozható formátumban (WSDL) leírt interfésszel. Más rendszerek a Web szolgáltatással SOAP üzenetekkel működnek együtt oly módon, ahogy azt a leírása megszabja, az üzeneteket szokásosan a HTTP felhasználásával, XML szerializációval és egyéb Web-bel kapcsolatos szabványok alapján továbbítja. A Web szolgáltatások megközelítés és a hagyományos megközelítés (OMG CORBA, DCOM) közötti alapvető különbséget a laza kötés jelenti. A másik fontos különbség abban áll, hogy a technológiákat és specifikációkat nyílt módon fejlesztették ki: W3C, OASIS (Organization for the Advancement of Structured Information Standards), ami biztosítja, hogy mind az ipari, mind a felhasználói igények figyelembe lettek véve. Web szolgáltatások kezdete 2000 közepére tehető, az XML üzenetküldés (SOAP, WSDL 1.1) és az UDDI kezdeti verziójának megjelenésével. Web szolgáltatásokdefiníció

  15. Szállítási szolgáltatások A üzenettovábbítási technológiák a Web szolgáltatások architektúra alapjai. A Web szolgáltatások szállítás semlegesek. Használhatjuk a mindenütt jelenlévő HTTP-t, vagy a biztonságos HTTP-t, a HTTPS-t, de bármely más kommunikációs protokollt is. Üzenetküldési szolgáltatások A SOAP (Simple Object Access Protocol) egy egyszerű mechanizmust biztosít a különböző platformokon épült szolgáltatások közötti struktúrált és típusos információcserére. A W3C jelenleg az 1.2 verziót szabványosította. A SOAP üzenetnek, ami egy XML dokumentum, három eleme van: a boríték (envelop), a fejrész (header) és a törzs (body). A WS-Addressing lehetővé teszi az üzenetküldők és fogadók szállítás-független azonosítását A SOA keretrendszert megalapozó technológiák

  16. A szolgáltatás leírása A szolgáltatás leírás olyan metaadat, amely teljesen leírja a szolgáltatás jellemzőit, ez a lehetőség alapvetően fontos a laza kapcsolat megvalósításához, biztosítja azon információk absztrakt defínicióját, melyek szükségesek a szolgáltatás bevetéséhez és a vele való együttműködéshez. A WSDL (Web Services Description Language) lehetővé teszi a Web szolgáltatás funkcionális jellemzőinek leírását, azaz a kapott és küldött üzenetek függvényében végrehajtandó műveleteket. A WSDL egy XML formátum a szolgáltatás végpont halmazának leírására, melyek az üzenetekre hatnak. A WSDL dokumentumnak két része van: az absztrakt defíniciók és a konkrét leírások. A WSDL lehetővé teszi a különféle üzenetminták leírását is. A SOA keretrendszert megalapozó technológiák

  17. Web szolgáltatás politika (WS-policy) A Web szolgáltatás funkcionális leírásán túl szükséges a használatával kapcsolatos korlátozások és feltételek megadása is. A WS-Policy specifikáció család bővíthető keretet biztosít ezen szolgáltatás biztonsági mínőségeinek és előírásainak leírására géppel is olvasható kifejezések formájában. Felderítési szolgáltatások A szolgáltatások leírását hozzáférhetővé kell tenni a felhasználók számára: tárház/regiszter (repository/registry) szolgáltatás. A UDDI (Universal Description and Discovery Interface) a Web szolgáltatások regisztrációjának széleskörűen elismert specifikációja. A megoldások a UDDI tárházakat futásidőben, dinamikusan is lekérdezhetik. A SOA keretrendszert megalapozó technológiák

  18. UDDI tárházak háromféleképpen biztosíthatók: Nyilvános (publikus) UDDI tárházak, melyek az Internet-alapú Web szolgáltatások forrásaként szolgálnak. Vállalaton belüli UDDI, amely egy vállalat belső saját (privát) tárháza, ami sokkal nagyobb ellenőrzési lehetőséget biztosít az elhelyezhető és felhasználható szolgáltatások tekintetében. Vállalatközi UDDI, ami meghatározott partnerek között megosztható szolgáltatások tárháza. A SOA keretrendszert megalapozó technológiák

  19. A szolgáltatás mínősége Ebben a rétegben a Web szolgáltatások egészére vonatkozó megbízhatósági követelményeket specifikálják: a biztonságot, az üzenet kézbesítésének megbízhatóságát és a tranzakciók támogatását. A megbízható üzenetküldés három alap biztosítékot jelent: kézbesítés sorrendben, ami azt jeleneti, hogy a kézbesítés a küldés sorrendjében történik, legalább egy kézbesítés, ami azt jelenti, hogy minden elküldött üzenetet legalább egyszer kézbesítenek, legfeljebb egy kézbesítés, ami azt jelenti, hogy minden elküldött üzenetet legfeljebb egyszer kézbesítenek. A WS-Coordination, a WS-AtomicTransaction és a WS-BusinessActivity olyan protokollokat defíniálnak, melyek lehetővé teszik az összetett üzleti folyamatok helyes végrehajtását. A SOA keretrendszert megalapozó technológiák

  20. A Web szolgáltatási architektúra stack egy lehetséges felépítése Forrás: http://www.w3.org/TR/2004/NOTE-ws-arch-20040211/

More Related