Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Подготовка к зачету Гадасина за 16 часов.docx
Скачиваний:
13
Добавлен:
21.01.2024
Размер:
8.53 Mб
Скачать

Преимущества

  • Веб-службы обеспечивают взаимодействие программных систем независимо от платформы. Например, Windows-C#-клиент может обмениваться данными с Java-сервером, работающим под Linux.

  • Веб-службы основаны на базе открытых стандартов и протоколов. Благодаря использованию XML достигается простота разработки и отладки веб-служб.

  • Использование интернет-протокола обеспечивает HTTP-взаимодействие программных систем через межсетевой экран. Это значительное преимущество, по сравнению с такими технологиями, как CORBA, DCOM или Java RMI. С другой стороны, веб-службы не привязаны намертво к HTTP — могут использоваться и другие протоколы.

Недостатки

  • Меньшая производительность и больший размер сетевого трафика по сравнению с технологиями RMI, CORBA, DCOM за счёт использования текстовых XML-сообщений. Однако на некоторых веб-серверах возможна настройка сжатия сетевого трафика.

  • Аспекты безопасности. Ответственные веб-службы должны использовать кодирование, возможно — требовать аутентификации пользователя. Достаточно ли здесь применения HTTPS, или предпочтительны такие решения, как XML Signature, XML Encryption или SAML — должно быть решено разработчиком.

Архитектура

Можно выделить три инстанции, взаимодействующие в рамках веб-службы. Переведём их названия как:

  • заказчик (service requester);

  • исполнитель (service provider);

  • каталог (service broker).

52. Bpel

BPEL (англ. Business Process Execution Language) — язык на основе XML для формального описания бизнес-процессов и протоколов их взаимодействия между собой. BPEL расширяет модель взаимодействия веб-служб и включает в эту модель поддержку транзакций.

В общем виде конфигурация BPEL-проекта выглядит следующим образом:

  • BPEL-визуальный редактор;

  • Сервер управления бизнес-процессами.

Основные файлы BPEL-проекта:

  • .bpel — логический синтез и координация веб-служб. Фактически алгоритм исполнения бизнес-процесса. (его графическое представление напоминает блок-схему и диаграмму потоков данных в одном лице).

  • .wsdl — описание интерфейсов для обмена сообщениями. «Как достичь веб-службы» (WSDL).

  • .xsd — описание структур данных проекта (XML Schema).

Пр

имеры применения BPEL

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

53. Понятие оркестровка и хореография Web сервисов

Оркестровка - описание внутреннего бизнес-процесса (сервиса) предприятия в виде последовательности и условий взаимодействия между внутренними и внешними для организации веб-сервисами (процессами).

Иными словами, оркестровка - это принцип построения некоторого набора действий, алгоритм, привлекающий (оркестрирующий) к своей работе операции (функции) других участников. Оркестратор же - это некоторый координатор, который, действуя по определенному алгоритму, привлекает к его выполнению других участников.

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

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

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

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

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