SOA и XML (1032063)
Текст из файла
Московский государственный технический университетим. Н.Э. БауманаКафедра ИУ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.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.