Из Википедии, бесплатной энциклопедии
  (Перенаправлено из архитектуры компонентов службы )
Перейти к навигации Перейти к поиску

Архитектура сервисных компонентов ( SCA ) - это программная технология, разработанная для предоставления модели для приложений, которые следуют принципам сервис-ориентированной архитектуры . [1] Технология, созданная основными поставщиками программного обеспечения, включая IBM , Oracle Corporation и TIBCO Software , охватывает широкий спектр технологий и, как таковая, указана в независимых спецификациях для обеспечения нейтральности языка программирования и среды приложений. [1] Часто используется служебная шина предприятия (ESB).

История [ править ]

Первыми партнерами, объявленными 30 ноября 2005 г., были: BEA Systems , IBM , IONA Technologies , Oracle Corporation , SAP AG , Sybase , Xcalia и Zend Technologies . [2] 26 июля 2006 г. были объявлены дополнительные члены: Cape Clear , Interface21 , Primeton Technologies , Progress Software , Red Hat , Rogue Wave Software , Software AG , Sun Microsystems и TIBCO Software . [3] Siemens AG присоединился к коллаборации компаний, работающих над технологией 18 сентября 2006 года.

Помимо партнеров, у сообщества SCA было несколько официальных сторонников. [4]

Определение [ править ]

21 марта 2007 года OSOA Collaboration выпустила первую версию спецификации. [5] В спецификациях сказано, что приложение, разработанное с использованием SCA, должно иметь:

  • Отделение бизнес-логики приложения от деталей вызываемых им сервисных вызовов
  • Целевые сервисы на множестве языков, включая C ++ , Java , COBOL и PHP, а также XML , BPEL и XSLT.
  • Возможность работы с различными коммуникационными конструкциями, включая одностороннюю, асинхронную, обратный вызов и уведомление.
  • Возможность "привязки" к унаследованным компонентам или службам, к которым обычно получают доступ такие технологии, как веб-службы , EJB , JMS , JCA , RMI , RPC , CORBA и другие.
  • Возможность декларировать (вне бизнес-логики) требования к качеству обслуживания , такие как безопасность, транзакции и использование надежных сообщений.
  • Данные могут быть представлены в объектах служебных данных

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

Маркетинговая компания Gartner Group опубликовала краткое описание SCA и включенной в нее технологии объектов служебных данных (SDO) в декабре 2005 года. [2]

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

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

Недостатки:

  • Спецификация не касается производительности приложений SOA, что по-прежнему препятствует их принятию.
  • Сосредоточение внимания на переносимости (вместо взаимодействия) [6], что делает его уязвимым для повторения ошибок CORBA . [7]

Утверждается, что SCA обеспечивает возможность взаимодействия посредством подхода под названием «Активация». Это метод, который обеспечивает наивысшую степень автономности компонентов по сравнению со старым методом «посредничества» (например, JBI ) или «вызовом», используемым в JCA , как объяснил архитектор из SAP. [8]

Артефакты [ править ]

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

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

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

Композиты развертываются в системе SCA . Система SCA представляет собой набор сервисов, обеспечивающих область бизнес-функций, которая контролируется одной организацией. Например, для бухгалтерии предприятия система SCA может охватывать все функции, связанные с финансами, и может содержать серию модулей, относящихся к конкретным областям бухгалтерского учета, причем один для счетов клиентов, а другой - для кредиторской задолженности. Чтобы помочь построить и настроить систему SCA, композиты могут использоваться как реализации компонентов, так же как классы Java или процессы BPEL . Другими словами, SCA допускает произвольную глубокую иерархию композитов - такая вложенная модель называется рекурсивной.

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

Переход в орган по стандартизации [ править ]

После нескольких лет инкубации в рамках неформального отраслевого сотрудничества, ранние (V1.0) реализации спецификации теперь выходят на рынок. Партнеры по сотрудничеству указали, что формальная отраслевая стандартизация будет подходящим следующим шагом, и объявили о своих намерениях в марте 2007 года. Выбранной организацией по разработке стандартов является организация OASIS , и была создана новая открытая секция членов CSA OASIS . [10] Уставы шести новых технических комитетов (ТК) были представлены в OASIS [11]и объявлен призыв к участию для членов Технического комитета внутри организации OASIS. Технические комитеты планировали начать свою работу в сентябре 2007 года. Участие в этих TC OASIS SCA остается открытым для всех компаний, некоммерческих групп, правительств, академических институтов и отдельных лиц. Архивы работ будут доступны как для членов, так и для нечленов, и OASIS предложит механизм общественного обсуждения. [12]

См. Также [ править ]

  • Apache ServiceMix
  • Модель и обозначение бизнес-процессов (BPMN)
  • Докер (программное обеспечение)
  • Интеграция корпоративных приложений (EAI)
  • Мул (программное обеспечение)
  • Откройте ESB
  • Реактивное программирование
  • Семантическая сервис-ориентированная архитектура (SSOA)
  • Сервисно-ориентированное моделирование
  • Фонд связи Windows (WCF)

Ссылки [ править ]

  1. ^ а б Эдвардс, Майк. «Архитектура сервисных компонентов» . ОАЗИС . Проверено 7 апреля 2011 года . CS1 maint: обескураженный параметр ( ссылка )
  2. ^ Б Даниел Шоллер, Дэвид Митчелл Смит (5 декабря 2005). «Новая спецификация SOA заполнит нишу среди пользователей Java» (PDF) . Gartner Group . Проверено 29 апреля 2017 года . CS1 maint: использует параметр авторов ( ссылка )
  3. ^ Поставщики технологий Srinivas расширяют сотрудничество по технологиям SOA http://www.hoise.com/primeur/06/articles/monthly/AE-PR-08-06-92.html Архивировано 12 июля 2011 г.на Wayback Machine
  4. ^ Сторонники технологии OSOA http://www.osoa.org/display/Main/Current+OSOA+Supporters+Community
  5. ^ «Спецификации архитектуры сервисных компонентов» . Откройте веб-сайт SOA Collaboration . Архивировано из оригинального 12 октября 2007 года . Проверено 29 апреля 2017 года . CS1 maint: обескураженный параметр ( ссылка )
  6. ^ [1] Архивировано 5 июля2008 г. на Wayback Machine SCA & SDO, следующий Corba?
  7. ^ "Архивная копия" . Архивировано из оригинала на 2008-12-02 . Проверено 8 апреля 2011 . CS1 maint: не рекомендуется параметр ( ссылка ) CS1 maint: заархивированная копия как заголовок ( ссылка ) Взлет и падение CORBA
  8. ^ "community.user: Сравнение SCA, Java EE и JBI | SCN" . Sdn.sap.com. 2005-12-12. Архивировано из оригинала на 2012-12-17 . Проверено 16 июня 2013 . CS1 maint: обескураженный параметр ( ссылка )
  9. ^ Белл, Майкл (2008). «Сервис-ориентированная концептуализация» . Сервис-ориентированное моделирование: анализ, проектирование и архитектура сервисов . Wiley & Sons. п. 3. ISBN 978-0-470-14111-3.
  10. ^ «Открытая секция членов CSA OASIS для SCA» .
  11. ^ «Шесть технических комитетов, предложенных для секции открытого CSA OASIS» .
  12. ^ «Форма шести комитетов OASIS для стандартизации архитектуры компонентов служб (SCA) для SOA» .

Дальнейшее чтение [ править ]

  • Понимание SCA от экспертов Джима Марино и Майкла Роули [2]
  • SOA для бизнес-разработчиков: концепции, BPEL и SCA - ISBN 978-158347-065-7 
  • Apache Tuscany в действии, ISBN 978-1-933988-89-4 
  • SOA с открытым исходным кодом, ISBN 1-933988-54-1 

Внешние ссылки [ править ]

  • Письмо от 19 февраля 2013 года с сообщением о смерти технического комитета Ассамблеи SCA OASIS, в этом письме умерла удивительная SCA.
  • Письмо от 20.02.2015 с лидером Джимом Марино, рассказывающим об убийстве Oracle SCA
  • Главная страница проекта составного приложения SOA NetBeans
  • верблюд
  • Запуск Apache Camel в OpenESB
  • Введение в программирование для SCA Dr. Dobb's
  • Apache Tuscany - реализация спецификации SCA с открытым исходным кодом
  • SALT - готовая к работе среда выполнения SCA для C ++, Python, Ruby и PHP
  • PocoCapsule для WS и SCA Контейнер C ++ SCA с открытым исходным кодом, основанный на инверсии управления (IoC) и доменно-ориентированном моделировании (DSM)
  • Распределенная среда выполнения SCA и OSGi с открытым исходным кодом Newton
  • Французский публичный исследовательский проект, который включает среду выполнения SCA под названием FraSCati.
  • Домашняя страница SCA на веб-сайте OASIS
  • Текущие ресурсы и обеспечение SCA
  • Последние новости SCA и SDO
  • Введение в SCA - учебное пособие Дэвида Чаппелла, Chappell & Associates
  • Подпроект Eclipse STP / SCA Проект Eclipse с открытым исходным кодом, который предоставляет набор инструментов для SCA.
  • Шаблоны микросервисной архитектуры и лучшие практики
  • сайт микросервисной архитектуры martinfowler
  • Умные конечные точки и глупые каналы - martinfowler