Важно отделить архитектуру SOA от SOAP, REST и других реализаций архитектуры.
Вы можете реализовать архитектуру SOA поверх любой технологии, которая поддерживает запрос и ответ через сообщения.
Основные характеристики архитектуры SOA: -
- Клиенты отправляют простые сообщения с запросами.
- Сервер отвечает сообщениями с одним ответом.
- Сервисные интерфейсы четко определены и «объявлены» клиентам.т.е. клиенты могут запрашивать сервер о том, какие службы поддерживаются и каков интерфейс для этих служб.
- Нет репликации данных и нет локального хранилища.Если клиент хочет узнать о виджете, он запрашивает службу виджета, клиент не сохраняет никаких данных виджета.Аналогичным образом, если клиент хочет обновить данные виджета, он отправляет запрос на обновление в службу виджетов.
- Синхронный, асинхронный и пакетный интерфейсы приемлемы.
Ключевые преимущества этогоК архитектуре относятся: -
- Единственный контакт между сервером и его клиентами - это «интерфейс».Клиент не знает и не нуждается в абсолютных знаниях о реализации серверов, также сервер не заботится о том, как реализован клиент.
- Данные принадлежат и управляются службой и только службой.Это устраняет проблемы с синхронизацией, репликацией и практически сводит к нулю возможность двойного обновления.
- Абсолютная простота получившейся архитектуры обеспечивает большую гибкость.
- Абсолютная простота получившейся архитектуры делаетдля очень надежных систем.
Однако, как вы совершенно верно сделали вывод, в реальном мире в основном используются SOAP и REST.Когда люди говорят SOAP, они обычно ссылаются на серию стандартов и протоколов WS- * -> WSDL (язык определения веб-служб), WSM (обмен сообщениями веб-служб), WS-Security и т. Д. И т. Д., Которые используют SOAP в качестве транспортного механизма..
Принимая во внимание, что REST обладает преимуществом простоты, а WS * очень сложен и сложнее в реализации, я бы рекомендовал подход WS * для любой достаточно большой системы.Стандарты WS * поддерживают не только простой запрос / ответ, но и асинхронные сообщения и транспорты, отличные от http (JMS, файлы и т. Д.), И, что более важно, стандарт безопасности WS хорошо работает и поддерживает безопасную деловую связь с бизнесом.