Skirtumas tarp interneto paslaugų ir WCF

Interneto paslaugos vs WCF

„Web Services“ ir „WCF“ yra internetinės technologijos, kurias sukūrė „Microsoft“. Žiniatinklio paslaugos buvo įdiegtos ankstesnėse .NET versijose, o WCF buvo įtraukta į .NET sistemą vėlesnėse versijose. Žiniatinklio paslaugos yra naudojamos kuriant programas, kurios gali siųsti / gauti pranešimus naudodamiesi SOAP per HTTP. WCF yra skirtas paskirstytoms programoms kurti, norint keistis žinutėmis naudojant SOAP per bet kurį transportavimo protokolą.

Interneto paslaugos

Žiniatinklio paslauga (.NET kartais vadinama ASMX technologija) yra ryšio būdas tinkle. Pasak W3C, žiniatinklio paslauga yra sistema, skirta palaikyti operacijas tarp mašinų tinkle. Tai yra žiniatinklio API, aprašyta WSDL (žiniatinklio paslaugų aprašymo kalba), o žiniatinklio paslaugos paprastai yra savarankiškos ir savaime suprantamos. Interneto paslaugas galima aptikti naudojant UDDI (universalus aprašymas, atradimas ir integracija) protokolą. Apsikeisdami SOAP (paprasto objekto prieigos protokolo) pranešimais paprastai per HTTP (su XML), kitos sistemos gali sąveikauti su interneto paslaugomis. Žiniatinklio paslaugos naudojamos įvairiais būdais, tokiais kaip RPC (Remote Procedure Call), SOA (Service Oriented Architecture) ir REST (Reprezentacinis valstybės perdavimas). Yra dvi automatizuotos interneto paslaugų kūrimo metodikos. Iš apačios į viršų nukreiptas požiūris pirmiausia susijęs su klasių kūrimu, o paskui naudojant WSDL generavimo įrankius, kad šios klasės būtų sudarytos kaip interneto paslaugos. Iš viršaus į apačią taikomas WSDL specifikacijų apibrėžimas ir kodų generavimo įrankių panaudojimas atitinkamoms klasėms generuoti. Žiniatinklio paslaugos yra dvi pagrindinės. Jie gali būti naudojami kaip daugkartiniai programų komponentai ir (arba) norint sujungti žiniatinklio programas, veikiančias skirtingose ​​platformose.

WCF

WCF („Windows Communication Foundation“) yra .NET API (Application Programming Interface), teikiantis vieningą programavimo modelį kuriant prijungtas ir į paslaugas orientuotas programas. Tiksliau, jis naudojamas kuriant ir diegiant paskirstytas programas su SOA. SOA užsiima paskirstyta kompiuterija, kurioje vartotojai naudojasi paslaugomis. Keli vartotojai gali vartoti vieną paslaugą ir atvirkščiai. WCF palaiko pažangiausius interneto paslaugų standartus, tokius kaip „WS-Addressing“, „WS-ReliableMessaging“, „WS-Security“ ir RSS sindikacija (pasiekiama po .NET 4.0). WCF klientas naudoja pabaigos tašką, kad prisijungtų prie WCF paslaugos. Kiekviena paslauga gali turėti kelis galutinius taškus, atskleidžiančius jos sutartį. Terminas ABC vartojamas norint nurodyti WCF paslaugos adresą / įrišimą / sutartį. Ryšys tarp klientų ir paslaugų vyksta naudojant SOAP vokus.

Kuo skiriasi žiniatinklio paslaugos ir WCF?

Yra keletas pagrindinių skirtumų tarp interneto paslaugų ir WCF paslaugų. Žiniatinklio paslaugos yra naudojamos kuriant programas, kurios gali siųsti / gauti pranešimus naudodamos SOPA per HTTP. Tačiau WCF yra skirtas paskirstytoms programoms kurti, kad būtų galima keistis žinutėmis naudojant SOAP ir bet kokį transportavimo protokolą, pavyzdžiui, HTTP, TCP, pavadintus vamzdžius ir „Microsoft Message Queuing“ (MSMQ) ir kt. Be to, WCF gali būti išplėstas, kad jis veiktų su bet kuriuo kitu transportavimo protokolu. Nors žiniatinklio paslaugos yra labai paprastos ir lengvai įgyvendinamos, WCF yra architektūriškai tvirtesnės nei žiniatinklio paslaugos. Žiniatinklio paslaugas galima talpinti tik IIS, o saugumas yra ribotas. Bet WCF galima priglobti IIS, savarankiškuose serveriuose su konsolės programomis ar „Win NT“ paslaugose ar bet kuriame kitame serveryje. Be to, skirtingai nei žiniatinklio paslaugos, WCF palaiko dvejetainius .NET - .NET ryšius, paskirstytas operacijas, WS * * specifikacijas, eilėje siunčiamus pranešimus ir ramią komunikaciją..