Разработка приложений на основе сервис-ориентированных систем

NovaInfo 46, с.41-44, скачать PDF
Опубликовано
Раздел: Технические науки
Просмотров за месяц: 3
CC BY-NC

Аннотация

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

Ключевые слова

АРХИТЕКТУРА SOA, ВЕБ-СЕРВИСЫ, РАЗРАБОТКА ПРИЛОЖЕНИЙ И СТАНДАРТОВ SOA

Текст научной работы

Появление архитектуры, ориентированной на сервисы, является следствием новых задач и потребностей, возникающих при создании и эксплуатации современных информационных систем:

  • оперативного реагирования на изменение условий ведения бизнеса и быстрой адаптации под новые бизнес-задачи;
  • оптимизации управления бизнес-процессами;
  • эффективного обеспечения внешних взаимодействий.

Можно выделить несколько основных принципов сервис-ориентированной информационной системы.

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

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

Идея сервисов в информационных системах имеет довольно длинную историю. Хорошо известны следующие подходы:

  • Java RMI (Java Remote Method Invocation);
  • CORBA(Common Object Request Broker Architecture);
  • DCE (Distributed Computing Environment);
  • Microsoft DCOM (Distributed Component Object Model).

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

Наиболее распространенными среди сервисных архитектур являются:

  • web-ориентированные;
  • композитные сервис-ориентированные;
  • событийно упрявляемые.

Web-Сервис – это приложение, доступное через Интернет и предоставляющее определенные услуги, форма которых не зависит от поставщика (так как используются универсальные форматы данных и платформы функционирования). Существует несколько различных технологий, поддерживающих концепцию распределенных объектных web-систем. К ним относятся технологии EJB, CORBA и DCOM. В этом случае между серверами и клиентами нет различий и систему можно представить как набор взаимодействующих объектов, местоположение которых не имеет особого значения. Главным отличием от многоуровневых клиент–серверных архитектур здесь является то, между поставщиками сервисов и их потребителями не существует различий.

Отличительные особенности современных прикладных веб-систем связаны с широким использованием технологий, интенсивное развитие и внедрение которых происходило в последнее десятилетие (так называемые принципы Веб 2.0):

  • новые форматы информационного обмена данными между клиентом и сервером на основе протокола HTTP – WMS, WFS, XML, JSON, и проч.;
  • асинхронное взаимодействие клиента и сервера по технологии AJAX – подход к построению интерфейсов, при котором веб-страница, не перезагружаясь, асинхронно загружает нужные данные;
  • веб-синдикация – механизм распространения информации, автоматического встраивания информационного контента в заданные разделы веб-приложения или на веб-страницы;
  • мэшапы – веб-сервисы, объединяющие данные из нескольких источников;
  • теги и таксономия – способ классификации информации, организации доступа к со держанию через автоматически формируемые категории / разделы в информационной системе;
  • социализация – возможность создания индивидуальных настроек веб-приложения, создание персонального раздела (личные файлы, изображения, мультимедиа и проч.).

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

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

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

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

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

Среди основных направлений работы в области развития стандартов следует выделить ряд магистральных направлений:

  1. Cоздание на базе Web services и XML технологии UDDI (Universal Description, Discovery and Integration). UDDI обеспечивает создание реестров организаций и сервисов, которые являются интегральными компонентами сервис-ориентированной архитектуры любой информационной среды.
  2. Cоздание на базе технологии UDDI глобального регистра UDDI (Business Registry, UBR). UDDI Business Registry является глобальным общедоступным реестром организаций и их сервисов. Он рассматривается в качестве ключевого компонента единой информационной среды.
  3. Разработка спецификаций электронного бизнеса ebXML. Группа стандартов ebXML строится на основе модульной архитектуры и с учетом мирового опыта применения стандартов EDI и web-services. ebXML обеспечивает ряд компонентов технической инфраструктуры.
  4. Разработка и продвижение современных стандартов электронного правительства (e-Government) для обеспечения взаимодействия государственных структур друг с другом, с коммерческими компаниями, с общественными организациями и с рядовыми гражданами.

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

Читайте также

Цитировать

Максимова, Н.А. Разработка приложений на основе сервис-ориентированных систем / Н.А. Максимова. — Текст : электронный // NovaInfo, 2016. — № 46. — С. 41-44. — URL: https://novainfo.ru/article/6191 (дата обращения: 22.05.2022).

Поделиться