Являются ли REST и SOAP реализацией SOA? - PullRequest
10 голосов
/ 12 марта 2011

У меня вопрос по SOA.

Являются ли SOAP и REST обоими подходами для реализации сервис-ориентированной архитектуры?

Я знаю, что REST - это стиль, и это подводит меня к этому вопросу.

Ответы [ 4 ]

5 голосов
/ 12 марта 2011

Да, они оба могут рассматриваться как подходы для реализации SOA. Я полагаю, вы могли бы сказать, что REST - это стиль, но тогда вы должны были бы сказать, что SOAP - тоже один из них. Я просто рассмотрел бы их различные методы для достижения одной и той же цели SOAP имитирует удаленный вызов процедур, а REST соответствует дизайну сети (http).

4 голосов
/ 12 марта 2011

При создании / адаптации сервисов для работы в архитектуре SOA предоставляемые интерфейсы могут быть любыми, если только у потребителей есть возможность обрабатывать ответ.

Чтобы дать более краткий ответ, я буду интерпретировать REST как интерфейс HTTP, который может выполнять операции CRUD, возможно, отвечая на запросы с помощью объекта XML или JSON.

SOAP склонен к более сложным операциям на стороне службы, библиотеки и соответствующие XML-документы SOAP привносят сложность в систему.

Если все, что вам требуется, это представление ресурсов, к которым можно получить доступ с помощью простых операций CRUD, то стоит рассмотреть возможность реализации интерфейса REST, чтобы уменьшить сложность, даже если служба будет работать параллельно с сервисами с интерфейсами SOAP. Все, что требуется, - это то, что потребитель службы может иметь дело с ответами в стиле RESTful, а также выступать в качестве клиента SOAP.

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

Когда шина обмена сообщениями включена в проект, с гетерогенными службами можно работать еще эффективнее, вставляя в процесс стандартные преобразования (XSLT, пользовательские), которые могут преобразовывать ответ от служб в стандартный формат, понимаемый системой как все.

0 голосов
/ 09 сентября 2013

Если вы просто спросите, могут ли они быть реализованы с помощью сервис-ориентированной архитектуры - да, они делают. Их даже можно использовать одновременно в одном проекте на основе SOA.

Если вы спрашиваете, следует ли использовать SOAP или REST - ответа не будет, если вы не предоставите спецификации проекта.

0 голосов
/ 18 октября 2012

SOAP и REST - это способы построения сервисов.

SOAP основан на XML и теоретически поддерживает больше, чем просто HTTP, и имеет стандарты для определения интерфейса (WSDL) и такие вещи, как безопасность (WS_Security),

REST - это стиль для выполнения веб-сервисов ресурс-ориентированным способом с использованием определенного набора веб-операций (GET, POST и т. Д.), Но он определяет очень мало других.

Однако SOA - это гораздо больше, чем просто набор сервисов.Выбор REST или SOAP является простой частью.

...