Jump to content

Принцип компонуемости сервисов

В вычислительной технике компонуемость сервисов — это принцип проектирования, применяемый в рамках парадигмы сервисно-ориентированного проектирования , который поощряет проектирование сервисов , которые можно повторно использовать в нескольких решениях, которые сами состоят из составных сервисов. Возможность перекомпоновки сервиса в идеале не зависит от размера и сложности состава сервиса. [1]

Этот принцип напрямую отвечает за гибкость, обещанную SOA, поскольку он способствует созданию новых решений путем повторного использования существующих сервисов. [2]

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

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

Приложение

[ редактировать ]

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

Чтобы служба обеспечивала эту двойную функциональность, контракт службы [3] должен быть спроектирован таким образом, чтобы он предоставлял функциональные возможности, основанные на различных уровнях входных и выходных данных. В случае, если требуется участие в качестве члена композиции, то обычно входные параметры службы будут более детальными по сравнению с ситуацией, когда требуется участие в качестве контроллера композиции. Часто повторно используемый сервис должен быть как можно более апатридным ( принцип безгражданства сервиса ), чтобы он мог обеспечить оптимальную производительность при включении в несколько композиций сервисов.
Эффективность этого принципа зависит от того, насколько остальные принципы проектирования успешно применяются . Применение принципа стандартизированного контракта службы обеспечивает совместимость служб с другими и помогает упростить структуру композиции, избегая необходимости выполнять преобразование модели данных во время выполнения. [4] Применяя принцип слабой связи служб , можно перекомпоновать службу с уверенностью, что она не создаст никакой формы отрицательной связи. [5] с другой службой в составе. Применение принципов автономии службы и безгражданства службы повышает надежность и доступность службы, поэтому ее можно повторно использовать в нескольких композициях служб с повышенной уверенностью.

Соображения

[ редактировать ]

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

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

Некоторые из факторов, определяющих потенциал компонуемости сервиса, включают в себя: [7]

  • Способность обеспечивать функциональность на разных уровнях бизнес-процесса.
  • Шаблон обмена сообщениями
  • Поддерживает ли сервис транзакции и функции отката/компенсации.
  • Поддержка обработки исключений.
  • Доступность метаданных о возможностях и поведении службы.

См. также

[ редактировать ]
  1. ^ «Служебный состав» . Архивировано из оригинала 11 марта 2010 г. Проверено 4 марта 2010 г.
  2. ^ Jump up to: а б Майкл Пулен. Эволюция принципов сервисной ориентации: сервисная безгражданство, часть 7 [Онлайн]. Дата доступа: 21 апреля 2010 г.
  3. ^ «Договор оказания услуг» . Архивировано из оригинала 1 мая 2012 г. Проверено 4 марта 2010 г.
  4. ^ IBM Red Books Power Systems и SOA Synergy [Онлайн]. Дата обращения: 21 апреля 2010 г.
  5. ^ типы муфт
  6. ^ «Шаблоны SOA» . SOA-шаблоны .
  7. ^ Редди. и др. Оценка устаревших активов в контексте перехода на SOA [Online].стр. 58. Дата обращения: 21 апреля 2010 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: e3798b5b1059c87ed5b879e0224ecb27__1674721800
URL1:https://arc.ask3.ru/arc/aa/e3/27/e3798b5b1059c87ed5b879e0224ecb27.html
Заголовок, (Title) документа по адресу, URL1:
Service composability principle - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)