Веб кызматтары менен WCF ортосундагы айырма

Веб кызматтары менен WCF ортосундагы айырма
Веб кызматтары менен WCF ортосундагы айырма

Video: Веб кызматтары менен WCF ортосундагы айырма

Video: Веб кызматтары менен WCF ортосундагы айырма
Video: Как сделать сайт-портфолио — учебник по веб-дизайну 2024, Июль
Anonim

Веб-кызматтарга каршы WCF

Веб кызматтары да, WCF да Microsoft тарабынан иштелип чыккан веб-технологиялар. Веб кызматтары. NETтин мурунку версияларында киргизилген, ал эми WCF кийинки версияларында. NET алкагына кошулган. Веб кызматтары HTTP аркылуу SOAP аркылуу билдирүүлөрдү жөнөтө/ала турган тиркемелерди куруу үчүн колдонулат. WCF ар кандай транспорттук протоколдор аркылуу SOAP аркылуу билдирүү алмашуу үчүн бөлүштүрүлгөн колдонмолорду курууга арналган.

Веб-кызматтар

Веб-кызматы (кээде. NETте ASMX технологиясы катары белгилүү) тармак аркылуу байланыш ыкмасы. W3C ылайык, Веб кызматы тармак аркылуу машинадан машинага транзакцияларды колдоого арналган система. Бул WSDL (Web Service Description Language) менен сүрөттөлгөн Веб API жана Веб кызматтары, адатта, өз алдынча жана өзүн-өзү сүрөттөйт. Веб-кызматтарды UDDI (Универсалдуу Description, Discovery and Integration) протоколу аркылуу табууга болот. SOAP (Simple Object Access Protocol) билдирүүлөрүн адатта HTTP (XML менен) аркылуу алмашуу менен, башка системалар Веб кызматтары менен иштеше алат. Веб кызматтары RPC (Алыскы процедуралык чалуулар), SOA (Кызматка багытталган архитектура) жана REST (Өкүлчүлүк мамлекеттик өткөрүп берүү) сыяктуу бир катар жолдор менен колдонулат. Веб кызматтарын иштеп чыгуу үчүн эки автоматташтырылган дизайн методологиясы бар. Төмөндөн өйдө карай мамиле адегенде класстарды түзүп, андан кийин бул класстарды веб кызматтар катары түзүү үчүн WSDL генерациялоо куралдарын колдонуу менен алектенет. Жогортон ылдый мамиле WSDL спецификацияларын аныктоо жана андан кийин тиешелүү класстарды түзүү үчүн кодду түзүү куралдарын колдонуу менен алектенет. Веб кызматтар эки негизги колдонууга ээ. Алар көп жолу колдонулуучу тиркеме-компоненттери катары жана/же ар кандай платформаларда иштеген веб-тиркемелерди туташтыруу үчүн колдонулушу мүмкүн.

WCF

WCF (Windows Communication Foundation) – бул туташкан жана тейлөөгө багытталган тиркемелерди иштеп чыгуу үчүн бирдиктүү программалоо моделин камсыз кылган. NET API (Колдонмо программалоо интерфейси). Тактап айтканда, ал SOA менен бөлүштүрүлгөн тиркемелерди иштеп чыгуу жана жайылтуу үчүн колдонулат. SOA керектөөчүлөр кызматтарды керектеген бөлүштүрүлгөн эсептөө менен алектенет. Бир нече керектөөчүлөр бир кызматты колдоно алышат жана тескерисинче. WCF WS-Addressing, WS-ReliableMessaging, WS-Security жана RSS синдикациясы (. NET 4.0 кийин жеткиликтүү) сыяктуу өркүндөтүлгөн веб-кызмат стандарттарын колдойт. WCF кардары WCF кызматына туташуу үчүн акыркы чекитти колдонот. Ар бир кызматтын келишимин көрсөткөн бир нече акыркы чекиттери болушу мүмкүн. ABC термини WCF кызматынын дарегине/милдеттүү/келишимине кайрылуу үчүн колдонулат. Кардарлар менен кызматтардын ортосундагы байланыш САМЫН конверттери аркылуу жүргүзүлөт.

Веб-кызматтар менен WCF ортосунда кандай айырма бар?

Веб кызматтары менен WCF кызматтарынын ортосунда кээ бир негизги айырмачылыктар бар. Веб кызматтары HTTP аркылуу SOPA аркылуу билдирүүлөрдү жөнөтө/ала турган тиркемелерди куруу үчүн колдонулат. Бирок, WCF SOAP жана HTTP, TCP, аталган түтүктөр жана Microsoft Message Queuing (MSMQ) сыяктуу каалаган транспорттук протоколду колдонуу менен билдирүүлөрдү алмашуу үчүн бөлүштүрүлгөн тиркемелерди куруу үчүн. Мындан тышкары, WCF башка транспорттук протоколдор менен иштөө үчүн кеңейтилиши мүмкүн. Веб кызматтары өтө жөнөкөй жана ишке ашыруу оңой болгону менен, WCF архитектуралык жактан Веб кызматына караганда күчтүү. Веб кызматтары IISде гана жайгаштырылышы мүмкүн жана коопсуздук чектелген. Бирок WCF IISде, консолдук тиркемелери бар өздүк серверлерде же Win NT кызматтарында же башка серверде жайгаштырылышы мүмкүн. Андан тышкары, веб-кызматтардан айырмаланып, WCF бинардык. NET –. NET байланыштарын, бөлүштүрүлгөн транзакцияларды, WS- спецификацияларын, кезектеги билдирүүлөрдү жана Restful байланыштарды колдойт.

Сунушталууда: