Erinevus veebiteenuste ja WCF-i vahel

Veebiteenused vs WCF

Nii veebiteenused kui ka WCF on Microsofti välja töötatud veebitehnoloogiad. Veebiteenuseid tutvustati .NET-i varasemates versioonides, hilisemates versioonides lisati WCF-ile .NET-raamistik. Veebiteenuseid kasutatakse selliste rakenduste ehitamiseks, mis saavad HTTP kaudu SOAP-i abil sõnumeid saata / vastu võtta. WCF on mõeldud hajutatud rakenduste loomiseks, et vahetada sõnumeid SOAP-i abil mis tahes transpordiprotokolli kaudu.

Veebiteenused

Veebiteenus (.NET-is mõnikord tuntud kui ASMX-tehnoloogia) on võrgu kaudu toimuva suhtluse meetod. W3C andmetel on veebiteenus süsteem, mis on pühendatud masinatevaheliste tehingute toetamiseks võrgu kaudu. See on WSDL-is (veebiteenuse kirjelduskeeles) kirjeldatud veebiliides ja veebiteenused on tavaliselt iseseisevad ja ennast kirjeldavad. Veebiteenuseid saab leida UDDI (Universal Description, Discovery and Integration) protokolli abil. Kui vahetatakse SOAP (lihtsa objekti juurdepääsuga protokolli) teateid tavaliselt HTTP kaudu (XML-iga), saavad teised süsteemid veebiteenustega suhelda. Veebiteenuseid kasutatakse mitmel viisil, näiteks RPC (Remote Procedure Call), SOA (Service Oriented Architecture) ja REST (reprezentatiivne riigiülekanne). Veebiteenuste arendamiseks on kaks automatiseeritud kujundusmetoodikat. Alt-üles lähenemine tegeleb kõigepealt klasside loomisega ja seejärel WSDL-i põlvkonna tööriistade kasutamisega nende klasside veebiteenusteks koostamiseks. Ülalt-alla lähenemine tegeleb WSDL-i spetsifikatsioonide määratlemisega ja seejärel koodide genereerimise tööriistade kasutamisega vastavate klasside genereerimiseks. Veebiteenustel on kaks peamist kasutusviisi. Neid saab kasutada korduvkasutatavate rakenduskomponentidena ja / või erinevatel platvormidel töötavate veebirakenduste ühendamiseks.

WCF

WCF (Windows Communication Foundation) on .NET API (rakenduste programmeerimisliides), mis pakub ühendatud programmeerimismudelit ühendatud ja teenusele orienteeritud rakenduste arendamiseks. Täpsemalt kasutatakse seda hajutatud rakenduste arendamiseks ja juurutamiseks koos SOA-ga. SOA tegeleb hajutatud andmetöötlusega, milles tarbijad tarbivad teenuseid. Mitu tarbijat saavad tarbida ühte teenust ja vastupidi. WCF toetab täiustatud veebiteenuste standardeid nagu WS-adresseerimine, WS-ReliableMessaging, WS-Security ja RSS sündikaat (saadaval pärast .NET 4.0). WCF-klient kasutab WCF-teenusega ühenduse loomiseks lõpp-punkti. Igal teenusel võib olla mitu lõpp-punkti, mis paljastavad selle lepingu. Mõistet ABC kasutatakse WCF-teenuse aadressi / köitmise / lepingu viitamiseks. Klientide ja teenuste vaheline suhtlus toimub SOAP-ümbrike kaudu.

Mis vahe on veebiteenustel ja WCF-il??

Veebiteenuste ja WCF-teenuste vahel on mõned peamised erinevused. Veebiteenuseid kasutatakse selliste rakenduste ehitamiseks, mis saavad SOPA abil HTTP kaudu sõnumeid saata / vastu võtta. Kuid WCF on mõeldud hajutatud rakenduste loomiseks, et vahetada sõnumeid, kasutades SOAP-i ja mis tahes transpordiprotokolli, näiteks HTTP, TCP, nimega torud ja Microsoft Message Queuing (MSMQ) jne. Lisaks saab WCF-i laiendada töötama mis tahes muu transpordiprotokolliga. Kuigi veebiteenused on väga lihtsad ja hõlpsasti rakendatavad, on WCF arhitektuurselt vastupidavam kui veebiteenus. Veebiteenuseid saab hostida ainult IIS-is ja turvalisus on piiratud. Kuid WCF-i saab hostida IIS-is, konsoolirakendustega isemajutavates serverites või Win NT teenustes või mõnes muus serveris. Lisaks toetab WCF erinevalt veebiteenustest binaarset .NET - .NET-ühendust, hajutatud tehinguid, WS-* spetsifikatsioone, järjekorras olevaid sõnumeid ja rahulikku suhtlust.