Skirtumas tarp WCF ir interneto paslaugų

WCF vs interneto tarnyba

Žiniatinklio paslaugos ir „Windows Communication Foundations“ (WCF) yra du metodai, kuriais programos palaiko ryšį tinkle.

Daugiau apie interneto paslaugas

Žiniatinklio paslaugos yra programų komponentai, prie kurių galima prisijungti naudojant atvirus protokolus, tokius kaip SOAP (paprastas objekto prieigos protokolas), kuris yra W3C sukurta XML kalba, skirta koduoti ir perduoti duomenis. SOAP duomenų aprašymui naudoja XML, duomenų perdavimui - HTTP. Pagrindiniai šių atvirų protokolų pranašumai yra paslaugų sąveika, nepaisant platformų ir naudojamų programavimo kalbų skirtumų. Žiniatinklio paslaugos naudoja (WSDL) žiniatinklio paslaugų aprašų kalbą), kad aprašytų paslaugas, o UDDI (universalus aprašymas, atradimas ir integracija), kad pateiktų galimas paslaugas. Žiniatinklio paslaugoms nereikia interneto naršyklės ar HTML, kad veiktų, ir jose gali būti arba nėra GUI, kaip apibrėžta programoje. Žiniatinklio paslaugas galima įdiegti naudojant ASP.NET.

Daugiau apie „Windows Communication Foundation“ (WCF)

„Windows Communication Foundation“ buvo įvestas siekiant pakeisti ankstesnes interneto paslaugų platformas ir kuriant programas naudojama į paslaugas orientuota architektūra. Sąveika ir keli pranešimų modeliai, paslaugų metaduomenys, duomenų sutartys ir keli transportavimo kodavimai yra WCF ypatybės. Patvarios žinutės, AJAX ir REST bei saugių operacijų funkcijos suteikia platformai daugiau universalumo nei ankstesnės žiniatinklio paslaugos.

Kuo skiriasi žiniatinklio paslaugos ir WCF?

• Internetines paslaugas galima talpinti IIS (interneto informacijos tarnyba) arba už jos ribų, tuo tarpu WCF galima talpinti IIS, WAS („Windows“ aktyvinimo tarnyba). WCF paslaugos paprastai gali būti talpinamos per IIS 5.1 arba 6.0, „Windows“ proceso aktyvinimo paslaugą (WAS), kuri teikiama kaip IIS 7.0 versija, ir bet kurioje .NET programoje. Norint talpinti žiniatinklio paslaugą IIS 5.1 arba 6.0 versijose, būtina, kad žiniatinklio tarnybos naudotų HTTP kaip ryšių perdavimo protokolą..

• „Web Services“ platformoje „Web Service“ atributas bus pridėtas prie klasės viršaus, o WCF - „Service Contract“ atributas. Be to, žiniatinklio metodo atributas pridedamas prie žiniatinklio paslaugos metodo viršaus, o WCF paslaugų teikimo sutartis bus pridėta prie viršutinio metodo..

• Web paslaugos naudoja XML 1.0, MTOM (Message Transmission Optimization Mechanism) ir DIME kodavimus, o WCF naudoja XML 1.0, MTOM ir Binary kodavimus. Abi platformos palaiko pasirinktinio kodavimo metodus.

• Žiniatinklio paslaugų platforma palaiko XML nuoseklųjį pritaikymą, tuo tarpu WCF paslaugų platformoje palaikoma paleidimo laiko seka.

• WCF paslaugos gali būti sudarytos iš kelių sriegių per paslaugų elgsenos klasę, o interneto paslaugos negali būti sudarytos iš kelių sriegių.

• „WCF Services“ palaiko įvairaus tipo įrišimus, tokius kaip „BasicHttpBinding“, „WSHttpBinding“, „WSDualHttpBinding“, o žiniatinklio tarnybos šiam tikslui naudoja tik SOAP arba XML..

• Internetinės paslaugos sudaromos į klasės bibliotekos rinkinį. Pateikiamas failas, pavadintas „paslaugų failas“, kurio plėtinys yra .asmx ir kuriame yra „@ WebService“ direktyva, nurodanti klasę, kurioje yra paslaugos kodas ir rinkinys, kuriame ji yra WCF.