ความแตกต่างระหว่าง Web Services และ WCF

Anonim

บริการเว็บและ WCF

ทั้ง Web Services และ WCF เป็นเทคโนโลยีทางเว็บที่พัฒนาโดย Microsoft บริการเว็บถูกนำมาใช้ในเวอร์ชันก่อนหน้านี้ NET ขณะที่ WCF ถูกเพิ่มเข้าไป NET Framework ในรุ่นที่ใหม่กว่า บริการเว็บใช้ในการสร้างโปรแกรมประยุกต์ที่สามารถส่ง / รับข้อความโดยใช้ SOAP ผ่าน HTTP WCF ใช้สำหรับสร้างแอปพลิเคชันแบบกระจายเพื่อแลกเปลี่ยนข้อความโดยใช้ SOAP ผ่านโปรโตคอลการขนส่งใด ๆ

Web Services

Web Service (บางครั้งเรียกว่า ASMX technology ใน. NET) เป็นวิธีการสื่อสารผ่านเครือข่าย ตาม W3C บริการเว็บเป็นระบบที่มีไว้สำหรับรองรับการทำธุรกรรมระหว่างเครื่องต่อเครื่องผ่านเครือข่าย เป็น Web API ที่อธิบายไว้ใน WSDL (Web Service Description Language) และเว็บเซอร์วิสมักมีอยู่ในตัวเองและอธิบายตัวเอง เว็บเซอร์วิสสามารถค้นพบได้โดยใช้โปรโตคอล UDDI (Universal Description, Discovery and Integration) โดยการแลกเปลี่ยนข้อความ SOAP (Simple Object Access Protocol) โดยทั่วไปผ่าน HTTP (with XML) ระบบอื่น ๆ สามารถโต้ตอบกับบริการเว็บ บริการเว็บใช้ในหลายวิธีเช่น RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) และ REST (State Representational State Transfer) มีสองวิธีการออกแบบอัตโนมัติสำหรับการพัฒนาบริการเว็บ แนวทางด้านล่างขึ้นที่เกี่ยวข้องกับการสร้างชั้นเรียนครั้งแรกและจากนั้นใช้เครื่องมือสร้าง WSDL เพื่อเขียนข้อมูลเหล่านี้เป็นบริการเว็บ วิธีการจากบนลงล่างเกี่ยวข้องกับการกำหนดข้อกำหนดของ WSDL และใช้เครื่องมือสร้างโค้ดเพื่อสร้างชั้นเรียนที่เกี่ยวข้อง บริการเว็บมีสองรูปแบบที่สำคัญ สามารถใช้เป็นส่วนประกอบแอพพลิเคชั่นที่นำมาใช้ซ้ำได้และ / หรือเพื่อเชื่อมต่อแอพพลิเคชันบนเว็บที่ทำงานบนแพลตฟอร์มที่แตกต่างกัน

WCF

WCF (Windows Communication Foundation) คือ NET API (Application Programming Interface) ซึ่งเป็นรูปแบบการเขียนโปรแกรมแบบครบวงจรสำหรับการพัฒนาแอ็พพลิเคชันที่เชื่อมต่อและใช้งานได้ โดยเฉพาะอย่างยิ่งจะใช้สำหรับการพัฒนาและปรับใช้โปรแกรมประยุกต์แบบกระจายกับ SOA SOA เกี่ยวข้องกับคอมพิวเตอร์แบบกระจายซึ่งผู้บริโภคใช้บริการ ผู้บริโภคหลายรายสามารถใช้บริการเดียวและในทางกลับกัน WCF รองรับมาตรฐานการให้บริการเว็บขั้นสูงเช่น WS-Addressing, WS-ReliableMessaging, WS-Security และ RSS Syndication (พร้อมใช้งานหลังจาก NET 4. 0) ไคลเอ็นต์ WCF ใช้ End Point เพื่อเชื่อมต่อกับบริการ WCF แต่ละบริการอาจมีปลายทางหลายจุดที่เปิดเผยสัญญา คำ ABC ใช้เพื่ออ้างถึงที่อยู่ / ผูกพัน / สัญญาของบริการ WCF การติดต่อสื่อสารระหว่างลูกค้าและบริการจะดำเนินการผ่านซองจดหมาย SOAP

ความแตกต่างระหว่าง Web Services กับ WCF คืออะไร?

มีข้อแตกต่างที่สำคัญระหว่างบริการเว็บและบริการ WCFบริการเว็บใช้ในการสร้างแอพพลิเคชันที่สามารถรับ / ส่งข้อความโดยใช้ SOPA ผ่าน HTTP อย่างไรก็ตาม WCF สำหรับการสร้างแอพพลิเคชันแบบกระจายเพื่อแลกเปลี่ยนข้อความโดยใช้ SOAP และโปรโตคอลการขนส่งอื่น ๆ เช่น HTTP, TCP, pipes ที่มีชื่อและ Microsoft Message Queuing (MSMQ) ฯลฯ นอกจากนี้ WCF ยังสามารถทำงานร่วมกับโปรโตคอลการขนส่งอื่น ๆ ได้อีกด้วย แม้ว่าบริการเว็บจะง่ายและใช้งานง่าย WCF เป็นสถาปัตยกรรมที่มีประสิทธิภาพมากกว่าบริการเว็บ บริการเว็บสามารถโฮสต์ใน IIS เท่านั้นและการรักษาความปลอดภัยมีข้อ จำกัด แต่ WCF สามารถโฮสต์ใน IIS เซิร์ฟเวอร์โฮสต์ด้วยตนเองกับแอพพลิเคชันคอนโซลหรือบริการของ Win NT หรือเซิร์ฟเวอร์อื่น ๆ นอกจากนี้ไม่เหมือนบริการเว็บ WCF สนับสนุนไบนารี NET - การสื่อสารแบบ NET, การทำธุรกรรมแบบกระจาย, ข้อกำหนด WS- *, การรับส่งข้อความที่รอคิวและการสื่อสารที่ไม่หยุดนิ่ง