Windows Communication Foundation

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Windows Communication Foundation (či též WCF, dříve označované jako „Indigo“) je sada knihoven, API a běhové prostředí, dohromady tvořící framework v rámci frameworku .NET, zajišťující komunikaci mezi aplikacemi a umožňující vytvářet servisně orientované aplikace.

Historie

Microsoft vyvinul Component Object Model (COM), který umožňuje aplikacím, napsaným v různých jazycích, spolupracovat pomocí standardních COM rozhraní. COM však umožňuje používat komponenty lokálně, nikoliv vzdáleně. +more Pro vzdálené použití komponent byl vyvinut Distributed COM (DCOM). Tato technologie, jako kombinace COM a síťového protokolu, v podstatě umožňuje vzdálené použití COM objektů. Tyto technologie byly zahrnuty pod názvem . NET Remoting. Značnou nevýhodou byla závislost komponent na platformě . NET. WCF je zatím posledním krokem ve vývoji vzdálené komunikace v rámci . NET frameworku. Servisní orientace umožňuje komunikaci . NET komponent navzájem či s komponentami jiných platforem unifikovaným standardizovaným způsobem.

Architektura

Služba WCF je program, který odhaluje kolekci koncových bodů (anglicky endpoint). Každý koncový bod je brána, skrze kterou služba komunikuje s okolím.

Koncový bod má tři vlastnosti, které jej specifikují: * Adresa koncového bodu čili KDE se brána ke komunikaci se službou nachází. * Binding čili spojení specifikuje, JAK či jakým způsobem koncový bod komunikuje s okolím. +more Obsahuje informace jako typ protokolu (TCP, HTTP, . ), kódování (text, binární data) či požadavky na zabezpečení (SSL, SOAP security type, . ). * Kontrakt čili popis, CO služba přenáší. Definuje tedy organizaci zpráv společně s typem přenosu jako one-way, duplex či request/reply.

Po spuštění pak služba naslouchá na svých koncových bodech, zda nějaký klient nevyžaduje komunikaci.

Klienti, kteří musí před samotným začátkem komunikace již popis služby vlastnit, jsou iniciátorem komunikace se službou. Se službou komunikují pomocí spojení s určitým koncovým bodem.

Vlastnosti

Mezi základní vlastnosti WCF patří: * Servisní orientace - WCF používá standard [url=, TCP apod. V případě potřeby lze implementovat vlastní protokol, a použít tento. +more * „Durable messages“ - možnost použít zprávy, které přežijí i přerušení ve spojení. Zpráva se uloží do databáze a při obnovení spojení lze znovu navázat tam, kde se přenos dat přerušil. * Podpora transakcí - podpora tří druhů transakcí, obsažených v . NET frameworku. * Podpora AJAX a REST - schopnost konfigurovat či rozšířit WCF pro zpracování [[Representational State Transfer|REST][Webová služba|webových služeb]] (WS), který umožňuje vytvářet servisně orientované aplikace. SOA je architektura, definující závislost při odesílání a přijímání dat na webových službách. WS mají mezi sebou slabou závislost na rozdíl od silné závislosti, „natvrdo“ naprogramované. Slabá závislost s sebou nese schopnost připojení klienta z jakékoli jiné platformy splňující alespoň nezbytný kontrakt. * Interoperabilita - schopnost konfigurace pro schopnost připojení služeb, splňující různé průmyslové standardy. * Typy zasílání správ - zprávy mezi koncovými body mohou být zasílány podle různých vzorů, např. request/reply, one-way message nebo duplex exchange pattern. * Metadata - schopnost publikovat metadata o kontraktu poskytovaném službou, nejčastěji pomocí WSDL dokumentu. * Datové kontrakty - WCF poskytuje uživatelsky přívětivou specifikaci kontraktu, který si služba vynucuje. Nejjednodušší řešení je vytvoření třídy (v jazyce C# nebo Visual Basic), která reprezentuje entitu specifikovanou datovým kontraktem služby. Vytvořená třída pak obsahuje vlastnosti, které datový kontrakt také specifikuje. Po vytvoření takové třídy, která kontraktu odpovídá, je práce s příchozími/odchozími daty velmi jednoduchá. * Bezpečnost - zprávy mohou být zašifrovány dle známých průmyslových standardů, např. SSL nebo WS-SecureConversation. * Transportní protokoly - službu lze nakonfigurovat pro přenos přes[/url]], „čistého“ XML bez SOAP obálky, jiných specifikací XML (ATOM), či dokonce non-XML formátů jako je JSON. * Rozšiřitelnost - WCF umožňuje v případě potřeby rozšířit řadu komponent, které jsou použity při celém procesu životního cyklu WS.

Literatura

CIBRARO, Pablo. Professional WCF 4: Windows Communication Foundation with .NET 4. Indianapolis, IN: Wiley, c2010, xxvii, 451 p. . (angličtina)

Kategorie:.NET

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top