Подтвердить что ты не робот

Что такое сервис-ориентированная архитектура?

Что такое сервис-ориентированная архитектура?

4b9b3361

Ответ 1

SOA - это способ разработки сервис-ориентированных приложений, а WCF - технология, которая может использоваться для разработки ориентированных на обслуживание приложений. НО SOA определяет строгие правила (известные как принципы SOA) для приложений. Если вы не следуете этим правилам, вы строите службы, но эти службы не соответствуют SOA.

WCF позволяет вам разрабатывать множество видов услуг. Вы можете создавать совместимые сервисы SOAP, которые соответствуют SOA или нет. Вы можете создавать чистые сервисы .NET с несовместимыми функциями, и вы можете создавать сервисы REST.

Более того, служба SOA может иметь другое значение, чем в WCF. В службе WCF представлен набор функций, открытых на конечных точках. В SOA услуга может быть целым приложением (набор подобных услуг WCF) - разница между малым и большим SOA.

Принципы SOA:

  • Границы явны - служба не имеет ничего общего с другими службами (даже таблицы базы данных и данные не могут использоваться совместно)
  • Службы автономны - каждая служба независима, может быть раздельно развернута и версией
  • В WSDL описываются схемы доступа и контракт, а не класс-сервисы, переносимые данные описаны в XSD, оркестровки (агрегация) описаны в BPEL
  • Совместимость служб основана на политике. WSDL содержит WS-Policies для описания конфигурации, необходимой для взаимодействия.

Как вы видите, особенно первые два принципа можно легко нарушить при создании службы WCF.

Ответ 2

SOA - это способ разработки полного решения, это набор общепринятых практик для общения, управления состоянием, совместимости и т.д. В программной архитектуре, в частности, SOA представляет собой набор сервисов (не обязательно веб-сервисов), которые встроенный независимо для поддержки ряда клиентских приложений. Модульный дизайн помогает в обслуживании, деловом сотрудничестве. SOA также предоставляет некоторые рекомендации для разработки:

  • Ограничения по сравнению с обратной совместимостью
  • Экспортирование метаданных
  • Обнаружение служб

С другой стороны, WCF - это просто поддерживающая технология, которая помогает вам создавать службы в .NET.

Вы можете создать SOA без WCF, так как создание множества служб WCF не делает вашу архитектуру ориентированной на обслуживание.

Ответ 3

SOA - это всего лишь метод, с помощью которого мы можем взаимодействовать между различными технологиями, такими как .NET и JAVA, используя веб-службы. Для этого вы должны быть знаниями в немногих вещах, как показано ниже.

  • XML
  • WSDL
  • UDDI
  • SOAP

зная эти вещи, вы можете легко применить эту SOA

Ответ 4

Service Oriented Architecture - это концепция программного обеспечения, в которой одна или несколько служб взаимодействуют друг с другом. Здесь услуга означает единицу работы для достижения цели. Например, продажа онлайн-билетов на железные дороги - это услуга, онлайн-бронирование отелей - это услуга, при которой онлайн-платеж - это услуга и т.д. Теперь подумайте, что гостиничная компания продает свои номера онлайн со своего собственного сайта. В этом случае веб-сайт использует локальную услугу. Тот же отель может также продавать номера через портал третьих сторон. Во втором случае портал сторонних путешествий использует удаленный сервис или веб-сервис. Бронирование отелей онлайн через портал путешествий является примером сервис-ориентированной архитектуры. В архитектуре, ориентированной на обслуживание, две или более стороны взаимодействуют друг с другом с помощью веб-служб. Среди них несколько провайдеров веб-услуг, и лишь немногие являются потребителями веб-сервисов. Программный компонент может быть построен с помощью сервис-ориентированной архитектуры с использованием веб-служб. WCF - это технология построения сервиса.

Ответ 5

WCF - это технология, которая упрощает создание служб, и работает на всех транспорте не только HTTP, но и более универсальна, чем веб-службы, которые работают только на Http.