Разница между WCF и веб-сервисом

WCF против веб-службы

Веб-службы и фонды связи Windows (WCF) - это два метода взаимодействия приложений по сети..

Подробнее о веб-сервисах

Веб-сервисы являются компонентами приложений, доступ к которым можно получить с помощью открытых протоколов, таких как SOAP (Simple Object Access Protocol), который является языком на основе XML, разработанным W3C, для кодирования и передачи данных. SOAP использует XML для описания данных и HTTP для передачи данных. Основными преимуществами этих открытых протоколов являются функциональная совместимость служб, несмотря на различия в платформах и используемых языках программирования. Веб-службы используют (WSDL) язык описания веб-служб) для описания служб, а UDDI (универсальное описание, обнаружение и интеграция) - для списка доступных служб. Веб-сервисам не требуется веб-браузер или HTML для работы, и они могут содержать или не содержать графический интерфейс пользователя, определенный приложением. Веб-сервисы могут быть реализованы с ASP.NET.

Подробнее о Windows Communication Foundation (WCF)

Windows Communication Foundation был введен для замены более ранних платформ веб-служб и использует сервис-ориентированную архитектуру при создании приложений. Функциональная совместимость и множественные шаблоны сообщений, метаданные службы, контракты данных и множественные транспортные кодировки являются функциями WCF. Функции надежных сообщений, AJAX и REST, а также функции безопасных транзакций добавляют платформе больше универсальности, чем более ранние веб-сервисы..

В чем разница между веб-сервисами и WCF?

• Веб-службы могут размещаться в IIS (информационная служба Интернета) или вне IIS, а WCF может размещаться в IIS, WAS (служба активации Windows). Службы WCF обычно могут размещаться в IIS 5.1 или 6.0, службе активации процессов Windows (WAS), которая предоставляется как часть IIS версии 7.0, и в любом приложении .NET. Чтобы разместить веб-службу в IIS версии 5.1 или 6.0, веб-службы должны использовать HTTP в качестве транспортного протокола связи..

• В платформе веб-сервисов атрибут веб-сервиса будет добавлен в начало класса, а в WCF будет атрибут контракта на обслуживание. Аналогично, атрибут веб-метода добавляется поверх метода веб-службы, в то время как в WCF контракт на обслуживание службы будет добавляться в верхний метод..

• Веб-службы используют кодировки XML 1.0, MTOM (механизм оптимизации передачи сообщений) и DIME, а WCF использует кодировки XML 1.0, MTOM и двоичные. Обе платформы поддерживают собственные методы кодирования.

• Платформа веб-сервисов поддерживает сериализацию XML, в то время как в WCF сервисная платформа поддерживает сериализацию во время выполнения..

• Службы WCF могут быть многопоточными через класс Service Behavior, тогда как веб-службы не могут быть многопоточными..

• Службы WCF поддерживают различные типы привязок, такие как BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, тогда как веб-службы для этой цели используют только SOAP или XML..

• Веб-сервисы скомпилированы в сборку библиотеки классов. Предоставляется файл с именем «файл службы», который имеет расширение .asmx и содержит директиву @ WebService, которая определяет класс, содержащий код службы и сборку, в которой он находится в WCF..