SOA и XML
Описание файла
Файл "SOA и XML" внутри архива находится в папке "SOA и XML". PDF-файл из архива "SOA и XML", который расположен в категории "". Всё это находится в предмете "архитектура корпоративных информационных систем" из 10 семестр (2 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "архитектура корпоративных информационных систем" в общих файлах.
Просмотр PDF-файла онлайн
Текст из PDF
Московский государственный технический университетим. Н.Э. БауманаКафедра ИУ5, Системы обработки информации и управленияДомашнее задание по предмету"Архитектура корпоративных информационных систем"Тема задания"SOA и XML"Выполнил:студент группы ИУ5-109Сидякин А.А.Руководитель:Нестеров Ю.Г.Москва, 2013Содержание1SOA1.1Что такое SOA . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31.2ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51.3Принципы SOA . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .61.3.1Сервисы как компоненты информационной системы . . . . . . . . . . . . . .71.3.2Сервис выполняет повторяющуюся бизнес функцию . . . . . . . . . . . . . .81.3.3Низкая связанность . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Независимость от языка . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .91.42343XML112.1Что такое XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112.2Применение в SOA . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .11Альтернативы SOA и XML143.1Концептуальные . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143.2Технологические . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143.2.1REST-архитектура как альтернатива SOA . .
. . . . . . . . . . . . . . . . . .143.2.2JSON как альтернатива XML . . . . . . . . . . . . . . . . . . . . . . . . . . . .15Преимущества использования SOA164.1Преимущества использования SOA в целом . . . . . . . . . . . . . . . . . . . . . . .164.2Преимущества SOA перед REST . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .164.3Преимущества SOA на примерах . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175Выводы по работе196Литература20211.1SOAЧто такое SOAСервис-ориентированная архитектура (service-oriented architecture, SOA) — модульный под-ход к разработке программного обеспечения, основанный на использовании распределённых, слабосвязанных (loose coupling) заменяемых компонентов, оснащённых стандартизированными интерфейсами для взаимодействия по стандартизированным протоколам.
Это концепция построения единого информационного пространства предприятия, в основе которой лежит принцип "сервисной"организации программного обеспечения. При этом под "сервисами" подразумевается некотораячасть функционала бизнес-приложения (например, "прием и обработка счетов к оплате" или "получение данных о клиенте"), которые можно компоновать и повторно использовать при автоматизациисквозных бизнес-процессов, то есть тех, которые протекают через несколько бизнес-приложений.[1]Программные комплексы, разработанные в соответствии с сервис-ориентированной архитектурой, обычно реализуются как набор веб-служб, взаимодействующих по протоколу SOAP, носуществуют и другие реализации.Интерфейсы компонентов в сервис-ориентированной архитектуре инкапсулируют деталиреализации (операционную систему, платформу, язык программирования) от остальных компонентов, таким образом обеспечивая комбинирование и многократное использование компонентов дляпостроения сложных распределённых программных комплексов, обеспечивая независимость от используемых платформ и инструментов разработки, способствуя масштабируемости и управляемости создаваемых систем.Архитектура не привязана к какой-то определённой технологии.
Она может быть реализована с использованием широкого спектра технологий, включая такие технологии как REST, RPC,DCOM, CORBA или веб-сервисы. SOA может быть реализована, используя один из этих протоколов и, например, может использовать дополнительно механизм файловой системы для обменаданными.Главное, что отличает SOA, это использование независимых сервисов с чётко определёнными интерфейсами, которые для выполнения своих задач могут быть вызваны неким стандартнымспособом, при условии, что сервисы заранее ничего не знают о приложении, которое их вызовет, априложение не знает, каким образом сервисы выполняют свою задачу.Принцип работы SOA показан на рисунке 1.
Несколько клиентов используют один сервис,не работая при этом с БД напрямую.SOA также может рассматриваться как стиль архитектуры информационных систем, который позволяет создавать приложения, построенные путём комбинации слабо-связанных и взаимодействующих сервисов. Эти сервисы взаимодействуют на основе какого-либо строго определённого3Рис. 1: Элементы SOAплатформенно-независимого и языково-независимого интерфейса (например, WSDL). Определениеинтерфейса скрывает языково-зависимую реализацию сервиса.SOA может поддерживать интеграцию и консолидацию операций в составе сложных систем, однако SOA не определяет и не предоставляет методологий или фреймворков для документирования сервисов.Языки высокого уровня, такие как BPEL, или спецификации, такие как WS-CDL и WSCoordination, расширяют концепцию сервиса, предоставляя метод оркестрации, для объединениямелких сервисов в более обширные бизнес-сервисы, которые, в свою очередь, могут быть включены в состав технологических процессов и бизнес-процессов, реализованных в виде составныхприложений или порталов.Состав SOA показан на рисунке 2.^Kˇ̨̨̛̛̬̦̯̦̪̬̣̙̖̦̾̔́ʶ̨̡̦̯̬̯̌ˀ̨̛̛̛̖̪̯̬̜̭̖̬̭̌̏̌̚ˁ̛̖̬̭̏ˀ̶̛̛̖̣̌̌́̚ʥ̛̦̖̭̚Ͳ̨̡̛̣̐̌ˁ̛̛̛̛̖̬̭̦̹̦̪̬̖̪̬̯̏̌́̌̔́́ʰ̴̦̯̖̬̖̜̭ʪ̦̦̼̖̌Рис.
2: Элементы SOAФронтэнд приложение – то, что видит пользователь, клиент. Например, веб-страница илиокно приложения.4Сервисная шина предприятия (ESB) – связующее программное обеспечение, обеспечивающее централизованный и унифицированный событийно-ориентированный обмен сообщениямимежду различными информационными системами. Подробнее о ней будет рассказано ниже.Контракт – описание интерфейса сервиса. Это документ, специфицирующий ожиданиясервиса по отношению к его потребителям и наоборот. Контракты Web-сервисов описываютсяWSDL-документом, в нотации XML определяющим, как потребители должны обращаться к сервису.
Использование XML на этом этапе имеет принципиальное значение, позволяя и провайдеру, ипотребителю сервиса не зависеть от определенной платформы. Контракты сервисов должны бытьдоступны потенциальным потребителям для интерпретации, анализа и реализации интеграции. Дляэтого используется специальный реестр, каталогизирующий доступные сервисы.Основными причинами появления SOA являются высокая динамика современного бизнесаи неуклонно возрастающие требования к постоянной адаптации информационных систем по отношению к этой динамике. Уже недостаточно, чтобы информационная система обеспечивала простуюавтоматизацию информационных и расчетных задач бизнеса.
Необходимо стремиться к тому, чтобыбыстро меняющиеся условия бизнеса, возникающие вследствие ужесточения конкуренции, находили полное отражение в информационной системе, то есть корпоративная информационная системадолжна меняться столь же быстро, сколь быстро меняются требования бизнеса и бизнес-процессыкомпании. [2]В любом случае, заказчикам необходимо полное понимание своего бизнеса и пониманиенеизбежности работы на перспективу, не ожидая сиюминутной отдачи, а консультантам и системным интеграторам необходима высокая квалификация на всех уровнях, понимание задач клиентови согласование зон ответственности.
Но нужно понимать, что SOA это не панацея от всех бед и нецель, а средство ее достижения и получения практических результатов.1.2ESBEnterprise Service Bus - сервисная шина предприятия — связующее программное обеспече-ние, обеспечивающее централизованный и унифицированный событийно-ориентированный обменсообщениями между различными информационными системами на принципах сервис-ориентированнойархитектуры.Основной принцип сервисной шины — концентрация обмена сообщениями между различными системами через единую точку, в которой, при необходимости, обеспечивается транзакционный контроль, преобразование данных, сохранность сообщений.
Все настройки обработки и передачи сообщений предполагаются также сконцентрированными в единой точке, и формируются втерминах служб, таким образом, при замене какой-либо информационной системы, подключённойк шине, нет необходимости в перенастройке остальных систем.5Наименование "шина" подобрано по аналогии с системной шиной компьютера, позволяющей подключать несколько устройств и передавать данные между ними по одному набору проводников.ESB играет важную роль в архитектуре SOA.