This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
webove_sluzby [2017/01/08 23:05] efox created |
webove_sluzby [2017/01/08 23:32] (current) efox |
||
---|---|---|---|
Line 10: | Line 10: | ||
* **RPC (Remote procedure calls)** – vzdálené volání procedur - pomocí WS je volána funkce s parametry definovanými v požadavku klienta, výsledek volání je oznámen v reakci na požadavek | * **RPC (Remote procedure calls)** – vzdálené volání procedur - pomocí WS je volána funkce s parametry definovanými v požadavku klienta, výsledek volání je oznámen v reakci na požadavek | ||
* **SOA (Service-oriented architecture)** – servisně orientovaná architektura, | * **SOA (Service-oriented architecture)** – servisně orientovaná architektura, | ||
- | * REST (Representational State Transfer) – funkcionalita je rozdělena do jednotlivých | + | |
====== architektura ====== | ====== architektura ====== | ||
Line 62: | Line 62: | ||
* poskytovatel klientovi nabízí množinu funkcí nad daty | * poskytovatel klientovi nabízí množinu funkcí nad daty | ||
* klient pomocí XML tyto funkce vzdáleně volá | * klient pomocí XML tyto funkce vzdáleně volá | ||
+ | * body a header obalene v envelope | ||
+ | |||
+ | ====== Web Services Description Language WSDL ====== | ||
+ | * XML dokument, který popisuje konkrétní WS - parametry při volání, návratový typ, ... | ||
+ | * operace a zprávy jsou popisovány na abstraktní úrovni | ||
+ | * v praxi se nejčastěji popisují služby, které si posílají zprávy pomocí formátu SOAP a protokolu HTTP | ||
+ | * **elementy: | ||
+ | * types - obsahuje definici datových struktur používaných ve zprávách, použiju nejčastěji XML schémata, | ||
+ | * message - definuje formát předávaných zpráv pomocí dříve definovaných datových typů, při použití SOAPu pro RPC odpovídá jedna část zprávy jednomu parametru vzdálené metody | ||
+ | * operation - abstraktní definice operací, které jsou službou podporovány, | ||
+ | * portType - sdružuje dohromady několik operací | ||
+ | * binding - slouží pro navázání určitého typu portu (portType) na konkrétní protokol a formát přenosu zpráv | ||
+ | * port - jeden koncový bod služby definovaný jako kombinace síťové adresy a dříve definované vazby (binding) | ||
+ | * service - sdružuje několik koncových bodů (portů) do jedné služby | ||
+ | |||
+ | ====== Universal Description, | ||
+ | * mechanismy pro registrování, | ||
+ | * adresářová služba popisující společnosti a webové služby, které poskytují | ||
+ | * pracuje jako WS => komunikace s ní probíhá pomocí SOAP | ||
+ | * **obsahuje 4 druhy entit** | ||
+ | * bussiness entity | ||
+ | * bussiness service | ||
+ | * binding tepmplate | ||
+ | * service typ | ||
+ | * **práce s UDDI:** | ||
+ | * vývojář prohledá registr a najde si služby, které potřebuje | ||
+ | * získá pro ně popis WSDL a může je začít rovnou používat | ||
+ | * UDDI nemusí obsahovat jen popisy webových služeb ve WSDL, lze do něj ukládat popisy služeb v libovolném formátu | ||
+ | * Z důvodu interoperability se však společně s UDDI používá právě SOAP a WSDL | ||
+ | *** WSIL** | ||
+ | * funguje naopak než UDDI | ||
+ | * poskytovatel nehledá klienty, ale klient hledá poskytovatele a jeho služby | ||
+ | * **katalog OGC Cat** | ||
+ | * OGC standard, definuje rozhraní pro vytváření aplikačních profilů pro prohledávání, | ||
+ | |||
+ | ====== Representational State Transfer REST ====== | ||
+ | * softwarová architektura navržená pro „hypermediové“ systémy v distribuované prostředí | ||
+ | * v úzkém slova smyslu definuje sbírku principů síťové architektury, | ||
+ | * na rozdíl od známějších XML-RPC či SOAP, orientován **datově**, | ||
+ | |||
+ | ===== komunikační protokol ===== | ||
+ | * **client/ | ||
+ | * **bezestavovost (stateless)**- každý požadavek musí obsahovat všechny informace nutné k jeho vykonání | ||
+ | * **cache** - každý požadavek může být explicitně označený jako cacheovatelný či necacheovatelný, | ||
+ | * **Code-On-Demand** - funkcionalita klienta může být rozšířena kódem, který zašle server (například JavaScript) | ||
+ | * **vrstevnatost** - umožňuje skládání vrstev poskytujících služby za účelem zvýšení variabilnosti (cache, transformace, | ||
+ | |||
+ | === Výhody REST konceptu === | ||
+ | |||
+ | * jednoduché a změnám odolné rozhraní - snadná rozšiřitelnost | ||
+ | * malé nároky na klienta z hlediska porozumění sémantice operací | ||
+ | * transparentnost - resource lze na " | ||
+ | |||
+ | |||
+ | === nevýhody REST konceptu proti RPC=== | ||
+ | * dsvvv\vds blablabláááááááááááááááááááááááááááá | ||
+ | |||
+ | |||
+ | ====== rest formát výměny dat ====== | ||
+ | * ATOM/RSS - sada protokolů pro publikaci a aktualizaci informačních zdrojů | ||
+ | * JSON (JavaScript Object Notation) - speciální záznam popisu dat odvozený z JavaScriptu s nízkou provozní režií, snadno a rychle interpretovatelný v jakémkoliv prohlížeči | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | ====== Business Process Execution Language BPEL ====== | ||
+ | * model a prostředky pro popis chování procesu, založeného na spolupráci mezi daným procesem a jeho partnery | ||
+ | * spolupráce mezi všemi partnery je zprostředkovávaná rozhraními WS a struktura spojení na této úrovni je zapouzdřená do tzv. partnerLink | ||
+ | * všechny externí zdroje a partneři jsou zde reprezentovány jako WSDL služby | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ---- | ||
+ | <WRAP center round box 60%> | ||
+ | webové služby v oblasti GIS | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||