Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Windows Communication Foundation (WCF) Vizuális Programozás.

Hasonló előadás


Az előadások a következő témára: "Windows Communication Foundation (WCF) Vizuális Programozás."— Előadás másolata:

1 Windows Communication Foundation (WCF) Vizuális Programozás

2 J.Zs.Cs.: Vizuális programozás (c) 2010 WCF Elosztott rendszerek Korábbi technológiák: DCOM, COM+/Enterprise Services, MSMQ,.NET Remoting, ASP web services (XML-alapú webszolgáltatások), named pipe, socket, peer-to-peer (P2P)...

3 Szolgáltatásorientált architektúra több autonóm szolgáltatás működik együtt úgy, hogy üzeneteket küldenek a határaikon túlra jól definiált interfészek segítségével Alapelvek Jól látható határok A szolgáltatás funkcionalitása csak az interfészeken keresztül jelenik meg. A külső hívó csak így tud kommunikálni a szolgáltatással és nem ismeri a megvalósítás részleteit. Itt nem cél az, mint a régebbi technológiáknál, hogy helyi objektumnak lássunk egy távoli objektumot. J.Zs.Cs.: Vizuális programozás (c) 2010

4 Alapelvek A szolgáltatások függetlenek A szolgáltatás, amennyire lehet, magányos sziget. A szolgáltatás és az ügyfele különböző nyelven íródhatnak, különböző futtatórendszer- környezetet használhatnak, más operációs rendszer alatt működhetnek. A szolgáltatások szerződésen keresztül és nem az implementáción keresztül kommunikálnak Osztályok és metódusok nem adhatók át a szolgáltatáshatáron keresztül. Szabályalapú kompatibilitás A WSDL-ben (Web Services Description Language) vagy a WS-Policy-ban leírt szabályokat, házirendet használjuk. J.Zs.Cs.: Vizuális programozás (c) 2010

5 Architektúra 5 Üzenetek Szöveg A A B B C C A A B B C C A A B B C C Szolgáltatások kommunikációja Végpont Forrás:

6 J.Zs.Cs.: Vizuális programozás (c) Szöveg A A B B C C A A B B C C Service Host A A B B C C Végpont [ServiceContract] interface IPizzaOrder { … } WSDL class PizzaOrderService: IPizzaOrder { … } Pl.: BasicHttpBinding, WSHttpBinding, NetTcpBinding Hogyan? Encoding + transzport + magasabb szintű szolgáltatások (biztonság, megbízhatóság, stb.) Befogadó process: konzol alk., service, IIS, Windows Forms alk. Forrás:

7 Kötés a hálózati protokollokat, a kódolási mechanizmusokat és a szállítási réteget definiálja HTTP-alapú kötések – Ezeket akkor használjuk, ha XML- webszolgáltatás protokollon keresztül kell dolgozni, vagyis amikor különböző rendszerek (más operációs rendszer, más programozási architektúra) között zajlik a kommunikáció. TCP-alapú kötések – Ezeket akkor használjuk, ha mind a szolgáltatás, mind a kliens legalább.NET 3.0 keretrendszer fölött fut. (Lehetnek különböző gépeken!) Itt jobb lesz a teljesítmény, ha XML-formátum helyett kompakt bináris formátumba kódoljuk az üzeneteket. MSMQ-alapú kötések – Az MSMQ a Microsoft üzenetsor-kezelő megoldása. Itt arról van szó, hogy az alkalmazás egy üzenetsorba küld üzenetet, nem pedig közvetlenül a másik alkalmazásnak. Amikor a címzett készen áll, hogy elolvassa az üzenetet, kiveszi az üzenetsorból és feldolgozza. Ez akkor hasznos, ha az üzenet küldője és feldolgozója nem azonos időben fut. J.Zs.Cs.: Vizuális programozás (c) 2010

8 HTTP-alapú kötések BasicHttpBinding – Ez a kötés szállításra a HTTP-t, üzenetkódolásra pedig az alapértelmezett szöveg/XML-t használja. WS-I Basic Profile 1.1. kompatibilis. Ezt a kötést főleg a visszamenőleges kompatibilitás miatt használjuk, pl. olyan alkalmazásoknál, amik ASP.NET webszolgáltatásokkal kell, hogy kommunikáljanak. WSHttpBinding – Az előzőhöz hasonló, de ez már támogatást nyújt a tranzakciókhoz, a megbízható üzenetküldéshez és a WS- címzéshez. Bináris adatkódolást is tud. WSDualHttpBinding – Az előzőhöz hasonló, de duplex szerződésekhez használható. (A szolgáltatás és a kliens oda- vissza tud üzenetet küldeni egymásnak.) Csak a SOAP biztonsági beállításait használja, és megbízható üzenetküldést követel meg. WSFederationHttpBinding – Akkor érdemes használni, ha a biztonság a legfontosabb szempont. Támogatja a WS-Federation protokollt, lehetővé téve felhasználók hatékony azonosítását és engedélyezését. Együttműködik a CardSpace technológiával is. J.Zs.Cs.: Vizuális programozás (c) 2010

9 TCP alapú kötések NetNamedPipeBinding – Egy számítógépen levő.NET alkalmazások közötti kommunikációhoz jó. NetPeerTcpBinding – Biztonságos kötést biztosít peer-to-peer (egyenrangú) hálózatokhoz. NetTcpBinding – Biztonságos és optimalizált kötés.NET alkalmazások közötti kommunikációhoz, amelyek különböző gépeken vannak. J.Zs.Cs.: Vizuális programozás (c) 2010

10 MSMQ-alapú kötések MsmqIntegrationBinding – Olyan MSMQ-alkalmazásokkal lehet vele kommunikálni, amelyek COM-ot, natív C++-t vagy a System.Messaging névtérben definiált típusokat használnak. NetMsmqBinding – Alkalmas különböző gépeken lévő.NET alkalmazások közötti kommunikációra. J.Zs.Cs.: Vizuális programozás (c) 2010

11 Szerződés A WCF-szolgáltatás által elérhetővé tett összes metódus leírása. Interfész Nyilvános osztály Struktúra J.Zs.Cs.: Vizuális programozás (c) 2010

12 Architektúra - csatornák Client runtime Dispatch runtime Protocol channel (Channel proxy) Protocol channel Transport channel Channel stack Kliens Szolgáltatás Allkalmaz ás Szolgálta tás obj. Forrás:

13 Egyszerű WCF-alkalmazás A szolgáltatás szerelvénye: Ez a.dll tartalmazza a külső hívók számára elérhető funkcionalitást leíró osztályokat és interfészeket. Az őt hosztoló folyamat: A szolgáltatás dll-jének szüksége van egy Windows-folyamatra, amely futtatja őt. Erre két lehetőség van: IIS (Internet Information Services), WAS (Windows Activation Service a Vistában) vagy pedig egy tetszőleges típusú alkalmazás (pl.: konzol vagy form), amely ServiceHost típusú objektumot hoz létre és az Open() metódussal elindítja a szolgáltatást. Itt kell megadni egy vagy több végpontot is, amelyek lehetővé teszik a szolgáltatáshoz való hozzáférést. A végpont az, ami az ABC-ből áll (adress, binding és contractname). WCF-ügyfél: Ez az alkalmazás a kliens, aki hozzáfér a szolgáltatáshoz egy közbeépülő proxy-osztályon keresztül. J.Zs.Cs.: Vizuális programozás (c) 2010


Letölteni ppt "Windows Communication Foundation (WCF) Vizuális Programozás."

Hasonló előadás


Google Hirdetések