Использование разных технологий
Архитектура не привязана к какой-то определённой технологии. Она может быть реализована с использованием широкого спектра технологий, включая такие технологии как REST, RPC, DCOM, CORBA или веб-сервисы.
Главное, что отличает SOA, – это использование независимых сервисов с чётко определёнными интерфейсами, которые для выполнения своих задач могут быть вызваны некоторым стандартным способом, при условии, что сервисы заранее ничего не знают о приложении, которое их вызовет, а приложение не знает, каким образом сервисы выполняют свою задачу.
Элементы сервис-ориентированной архитектуры
SOA также может рассматриваться как стиль архитектуры информационных систем, который позволяет создавать приложения, построенные путём комбинации слабо-связанных и взаимодействующих сервисов. Эти сервисы взаимодействуют на основе какого-либо строго определённого платформенно-независимого и языково-независимого интерфейса (например, WSDL). Определение интерфейса скрывает языково-зависимую реализацию сервиса.
Таким образом, системы, основанные на SOA, могут быть независимы от технологий разработки и платформ (таких как Java, .NET и т. д.). Например, сервисы, написанные на C#, работающие на платформах .NET и сервисы на Java, работающие на платформах Java EE, могут быть с одинаковым успехом вызваны общим составным приложением. Приложения, работающие на одних платформах, могут вызывать сервисы, работающие на других платформах, что облегчает повторное использование компонентов.
|
|
SOA может поддерживать интеграцию и консолидацию операций в составе сложных систем, однако SOA не определяет и не предоставляет методологий или фреймворков для документирования сервисов.
Языки высокого уровня, такие как BPEL, или спецификации, такие как WS-CDL и WS-Coordination, расширяют концепцию сервиса, предоставляя метод оркестрациидля объединения мелких сервисов в более обширные бизнес-сервисы, которые, в свою очередь, могут быть включены в состав технологических процессов и бизнес-процессов, реализованных в виде составных приложений или порталов.
SOA – это архитектура, поэтому она не налагает на приложения никаких ограничений в части используемых технологий создания сервисов, транспорта и клиента. Таким образом, например, возможно создать сервис на C# и клиентское приложение на Java, которое будет успешно использовать функционал сервиса.
Технология веб-сервисов (веб-служб)
Особенности
– при создании веб-служб были введены понятия протокола и формата данных;
– формат данных и протокол обменабыли стандартизированы;
– в качестве протокола используется HTTP (теоретически может быть использован любой другой протокол);
|
|
– формат данных – XML.
Выбор HTTP и XML обеспечил успех технологии веб-служб: благодаря HTTP они могут проходить через все сетевые экраны, подключаться по принципу веб-клиента к любым серверам (за которыми на самом деле стоят прикладные сервера, выполняющие некоторые действия). Благодаря использованиюXML любые программы могут взаимодействовать друг с другом. Появился новый формат данных – SOAP.
33.2 Основные понятия
SOAP (SimpleObjectAccessProtocol) – новый формат данных, XML определенного стандарта, в котором имеются определенные теги, вкладываемые в HTTP.
WSDL (WebServiceDefinitionLanguage) – XML формат, стандартизированный и ориентированный на описание интерфейсов веб-служб.
Зачем появится WSDL? Веб-службы имеют некоторый интерфейс, через который к ним можно обращаться, используя данные в формате SOAP. Интерфейс должен иметь описание, т.е. необходима замена IDL. WSDL – замена IDL.
Разрешенные теги WSDLописаны в схеме для этого типа XML. Это позволяет, подключиться к службе HTTP –>получить WSDL-схему с помощью запроса HTTP–>сгенерировать прокси, через который будет выполняться запросы (для любого языка программирования). Например, используяJava или C#, можно получить классы, сгенерированные на основе WSDL. Интерфейсные модули могут быть сгенерированы для любого языка программирования.
Дата добавления: 2018-08-06; просмотров: 240; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!