Canonical schema (Canonical schema)
int main()
{
printf("Hi");
return 0;
}
| Это заготовка статьи о программировании. Помогите Википедии, дополнив её. |
В программной инженерии, Canonical Schema – шаблон проектирования, применяемый в SOA для уменьшения преобразований модели данных за счёт использования общей унифицированной схемы[1].
Обоснование
[править | править код]Взаимодействие между сервисами часто требует обмена бизнес-документами. Чтобы сервис-потребитель мог отправить данные (относящиеся к определённой бизнес-сущности, например, заказу), ему необходимо знать правильную модель данных. Для этого сервис-провайдер декларирует формат данных, которые он ожидает получить от потребителя (например, в случае веб-сервиса это может быть XML-схема[2]). Зная схему данных, потребитель может правильно представить данные.
Тем не менее, в некоторых случаях потребитель может уже располагать необходимыми данными, но в другому формате, нежели требует провайдер, из-за чего данные перед отправкой приходится приводить к формату провайдера. При этом вполне возможно, что после получения обработанного документа от провайдера потребитель будет конвертировать его обратно в ту модель, которую он имел изначально.
Двойная конвертация повышает издержки и усложняет проектирование композиции сервисов[3]. Чтобы уменьшить необходимость в трансформациях, паттерн canonical schema предлагает использовать общую унифицированную модель данных для документов, которыми приходится часто обмениваться [4][5].
Применение
[править | править код]Этот раздел статьи ещё не написан. |
Ссылки
[править | править код]- ↑ Mauro. et al. Service Oriented Device Integration - An Analysis of SOA Design Patterns. Архивная копия от 9 октября 2012 на Wayback Machine [Online], pp.1-10, 2010 43rd Hawaii International Conference on System Sciences, 2010. Date accessed: 30 April 2010.
- ↑ Service can be implemented using any technology as long as it conforms to the service-orientation guidelines.
- ↑ Service Compositions . Дата обращения: 9 января 2019. Архивировано из оригинала 11 марта 2010 года.
- ↑ service inventory . Дата обращения: 9 января 2019. Архивировано из оригинала 13 марта 2010 года.
- ↑ Thomas Erl, Herbjörn Wilhelmsen.Canonical Schema Design Pattern Архивная копия от 9 января 2019 на Wayback Machine[Online]. Date accessed: April 8, 2010.
См. также
[править | править код]- Thomas Erl[англ.] et al., (2009).SOA Design Patterns Архивная копия от 13 апреля 2014 на Wayback Machine. Prentice Hall. ISBN 0-13-613516-1.
- Thomas Erl (2008).SOA Principles of Service Design. Prentice Hall. ISBN 0-13-234482-3.
- SOA Terms Glossary Архивная копия от 24 июня 2013 на Wayback Machine
- SOA Design Patterns Архивная копия от 1 декабря 2018 на Wayback Machine
На эту статью не ссылаются другие статьи Википедии. |