|
Работа с Web-сервисами в корпоративных SOA: Часть 2. Максимизация функциональной совместимости с внешними Web-сервисами
Статьи
→
SOA и Web-сервисы
Введение
В моем первом пособии из этой серии по корпоративной SOA, «Заполнение системных пробелов предприятия с помощью множественных SOA» (смотрите Resources) я говорила о различных способах заполнения системных пробелов предприятия с помощью многочисленных SOA и показала, как можно повторно использовать Web-сервисыцентральные данные и бизнес-логикуиз одной или более SOA и объединить их в составное приложение под контролем организации.
Когда организация не контролирует Web-сервисы, следует убедиться, что они могут внешне взаимодействовать друг с другом по отношению к совместно используемым семантике и контрактным обязательствам. Семантические несостыковки (например, в связи с патентом) или лазейки в контракте (например, многоплатформные различия) способствуют появлению проблем во взаимодействии между внешними Web-сервисами предприятия.
В этом пособии я покажу вам следующие четыре примера реализации сервисов Manufacturing Resource Planning (MRP) и Customer Relationship Management (CRM):
- Наследованное бизнес-приложение
- Динамическое соединение с внешними Web-сервисами
- Совместимость запросов REpresentational State Transfer/Simple Object Access Protocol (REST/SOAP) с внешним Web-сервисом
- Функциональная совместимость Web-сервисов при использовании IBM® WebSphere® Application Server и Microsoft® Visual Studio. Net
Обдумывая различные компромиссные рещения, важно определить максимальное число совместимых SOA, которые есть в системе, чтобы избежать перезагрузок SOA.
Наследованное бизнес-приложение
Предположим, что унаследованное бизнес-приложение (смотрите Рисунок 1) разделено на модульные компоненты бизнес-процессов. Два наиболее важных компонента приложения-- MRP и CRMтребуют частых изменений и перекомпиляции долго работающего приложения.
Рисунок 1. Наследованное бизнес-приложение
Динамическое соединение сервисов
Чтобы повысить эффективность эксплуатации, следует вынести эти компоненты из данного приложения и перестроить их во внешние Web-сервисы. Таким образом, вы сможете поменять код в обоих Web-сервисах и не перекомпилировать большое, сложное, долго работающее приложение.
Доработанное приложение, как более компактная форма в первой SOA (смотрите Рисунок 2), предоставляет возможность динамической связи в внешним корпоративным Web-сервисом MRP во второй SOA, которая, в свою очередь, указывает на внешний корпоративный Web-сервис CRM в третьей SOA. При получении запроса Web-сервис CRM посылает запросы и информацию в приложение для дальнейшей обработки.
Рисунок 2. Динамическая связь с Web-сервисами
Каждый механизм соединения работает по схеме посыла запроса или сообщения, получения ответа или произведения операции SQL или HTTP. Вы также можете закрыть приложение без компонента MRP, чтобы послать запрос на Web-сервис MRP.
Среды разработки ПО
Вы должны помнить, что вопросы функциональной совместимости между платформами могут возникнуть при переключении от одного протокола к другому или одной среды разработки ПО к другой. Например, SOAP, REST,. Net Framework, Enterprise Java Beans (EJB) и Java Messaging Service (JMS).
Web-сервисы. Net, выходящие за рамки HTTP, можно назвать по-разному: операция HTTP GET, операция HTTP POST, и SOAP. Операции GET и POST необходимы, если срочно нужен Web-сервис, а клиент SOAP недоступен. Вы можете использовать REST, чтобы выполнить операции GET, POST, PUT и DELETE через HTTP в скрипте Perl. В этом скрипте вы можете послать запросы SQL и простые очереди сообщений.
Если клиент SOAP доступен, то сделать простой выбор между REST и SOAP можно следующим образом. Если приложение основано на ресурсе, выберите REST. Если приложение основано на деятельности, выберите SOAP. При работе с REST клиент может запросить выполнение нескольких операций на нескольких источниках через HTTP. Для запросов на SOAP нужна только одна операция запуска для каждой ориентированной на деятельность функции, которую может запросить клиент.
Среда разработки вызова
Чтобы сделать запрос SOAP, используйте Web Services Language Description (WSDL), язык, который описывает, как получить доступ к Web-сервису и то, какую операцию он произведет. Вы можете определить тип сервиса без кода настройки для Web-сервисов и без перекомпилирования унаследованного приложения.
Чтобы убедиться в том, что WSDL будет работать с различными средами разработки ПО, можете воспользоваться средой разработки IBM Web Services Invocation Framework (WSIF), которая позволяет использовать WSDL как стандартное описание несовместимого (disparate) ПО. То есть Вы можете получить доступ к WSDL, независящий от протокола или места нахождения, через язык описания API. Вы также сможете соединить Web-сервисы как комбинированное приложение, используя один WSDL, в котором вы можете переключать протоколы и места нахождения при разных условиях и исключениях.
Для построения WSIF Вы должны соблюдать минимальные требования, общие у любого провайдера. Опции:
- анализатор JAXP XML
- WSDL для Java API
- Apache SOAP
- Apache Axis.
Совместимость REST и SOAP
Так как запросы REST не зависят от WSDL, как запросы SOAP, для проверки операций REST вам нужны XML-схемы. Так как WSDL поддерживает технические характеристики схемы, REST и SOAP могут быть совместимы как запросы от комбинированного приложения Web-сервиса по отношению к внешнему Web-сервису.
Например, приложение в SOA #1 (смотрите Рисунок 3) сначала повылает запрос SOAP для активизации ориентированного на деятельность сервиса из Web-сервиса MRP в SOA #2 и затем посылает запрос REST для работы с серией сервисом, онованном на ресурсе, по отношению к тому же Web-сервису MRP Web. Все запросы SOAP основаны на IBM WSIF.
Рисунок 3. Совместимость REST и SOAP
Как видите, приложение в первой SOA поступает на сервер Unix или Linux, а Web-сервис MRP во второй SOA поступает на сервер приложения IBM WebSphere (Application Server). Вы можете использовать WSIF, чтобы изменить тип сервиса или место нахождения в стандартной версии WSDL для запросов SOAP.
Функциональная совместимость продуктов WebSphere и. Net
Если вы хотите разработать более сложные Web-сервисы как часть проекта разработки расширенной корпоративной системы на платформе Linux или Windows, рассмотрите вариант IBM Rational® Application Developer для ПО Websphere. Он предоставляется с Universal Modeling Language (UML) Visual Editor для Java™ и EJB и функционирует на прлатформе открытого ПО Eclipse, позволяя вам расширить среду разработки. Вы также можете использовать Microsoft Visual Studio.Net.
Вы можете использовать также ПО для деления логики приложения на модульные компоненты Web-сервиса различных бизнес-процессов. IBM предлагает новейшую разработку Web Services Navigator, подключаемую программу Rational Application Developer, которая позволяет вам воздействовать на транзакции Web-сервисов.
Если вы используете Visual Studio.Net для разработки Web-сервисов на платформе Microsoft. Net platform, можете запустить их на Application Server. То есть, Вы можете сжать функциональную совместимость Web-сервисов между двумя платформами (смотрите Resources), и все, что необходимо, это разработать единый для обеих платформ WSDL.
Например, приложение, запущенное на сервере Unix или Linux (смотрите Рисунок 4) сначала посылает запрос SOAP для активизации сервиса, ориентированного на деятельность, из Web-сервиса MRP на Application Server. Приложение затем посылает запрос REST,чтобы работать на нескольких сервисах, ориентированных на ресурс, на том же Web-сервисе MRP. При получении запроса Web-сервис CRM в SOA #3 посылает запрос или информацию на исходное приложение.
Рисунок 4. Многоплатформные внешние Web-сервисы
Как видите, Web-сервис CRM в третьей SOA запускается на платформе. Net и имеет доступ к серверу приложений Application Server. Web-сервис CRM посылает запрос или информацию на приложение в первой SOA. Вы можете добавить подключаемую программу Visual Perl для Visual Studio.NET. Вы также можете использовать командный уровень Perl для миграции скрипта Perl, основанного на REST, от Unix к Windows и адаптировать его к среде Visual Perl, в зависимости от сложности скрипта.
Visual Studio
Чтобы герметизировать приложения Unix как компоненты COM, лучше выбрать Visual Studio. Net, чем Visual Basic, C++, Java, или Kornshell. С ним также проще работать, если Вы разрабатываете приложение для запуска приложений Windows с основным сценарием Unix, или если Вы переносите приложения Unix на платформу Windows, чтобы связаться с внешними Web-сервисами.
Вот что еще следует знать. Во-первых, вы должны опубликовать свой WSDL в общедоступном месте, чтобы устранить некоторые функциональные несоответствия. Вы можете пропустить автоматически создающийся файл WSDL в Bottom Up-подходе Rational Application Developer или WSDL First-подходе Visual Studio. Net. Вы можете использовать скелет Rational Application Developer или подход Top Down для запуска файла WSDL и внедрить Java Class. Или же Вы можете остановить автоматическое создание файла WSDL в WDSL First-подходе Visual Studio или опубликовать свой.
Во-вторых, чтобы получить шаблон WSDL, используйте метод Bottom Up в ПО Rational Application Developer (из Java Bean), Rational XDE (чтобы генерировать код шаблона, основанный на моделях классов) или метод Implementation First из ПО Visual Studio (чтобы генерировать код шаблона после того, как вы начали писать код для Web-сервиса). Rational Application Developer предоставляет редактор WSDL, а Visual Studio.Net этого не гарантирует.
Сколько SOA?
Количество SOA, которое вы можете использовать для связи с приложениями EAI, зависит от тех компромиссов для состыкования ПО, которые вы используете в связи со сложностью проекта, вопросами функциональной совместимости, бизнес-процессами и проблемами загрузки. Чтобы избежать издержек SOAP, вам нужно убедиться, что в течение всей разработки не произойдет перегрузка SOA. Необходимо протестировать возможные перегрузки на каждом витке цикла.
Заключение
Максимизация функциональной совместимости внешних Web-сервисов между многоплатформными SOA требует заблаговременного планирования, чтобы установить необходимое количество разрабатываемых SOA. Вы должны работать совместно с группой бизнес-аналитиков и со специалистами отдела информационных технологий. Решение вопросов функциональной совместимости сильно облегчит процесс разработк приложений. Вы можете разработать внешние Web-сервисы, каждый из которых может использовать разные платформы и протоколы запроса. Работа аналитиков по созданию и анализированию системы многоплатформных SOA также пойдет легче. Они смогут определить те платформы Web-сервисов, на которых SOA будет работать без перегрузок.
23.02.2008
Комментарии
Добавить комментарий (анонимные комментарии не публикуются!!!)
Новости и пресс-релизы СМ-Консалт
21.02.2012 12:42:20 Новая статья: IT и психология. Человеческий фактор в парном программировании: почему многие не получают желаемого от его внедрения?
Статья, находящаяся перед вами, открывает цикл статей о человеческом
факторе, Agile-практиках и других полезных приемах, используемых при
управлении командами в ИТ. Объединяет рассматриваемые практики и приемы
одно – они позволяют проявиться положительным эффектам, связанным с
человеческим фактором. И мы объясняем, почему с точки зрения психологии,
это происходит. Так сказать, подводим теоретическую и экспериментальную
базу под то, что себя уже давно зарекомендовало и работает. Или под то,
что работает не у всех, и потому является предметом оживленных споров и
дискуссий. И начинаем мы наши исследования с рассмотрения эффекта
парного программирования через призму экспериментов социальной
психологии.
Отдельную благодарность за рецензию и время, потраченное на прочтение
первого варианта статьи, выражаем Асхату Уразбаеву,
ценные замечания которого позволили не только улучшить данную статью,
но и позволили убедиться в необходимости и востребованности именно цикла
статей!
Читать -->
27.12.2011 16:15:27 Компания "СМ-Консалт" получила отзыв о работах в Федеральной Налоговой Службе (ГНИВЦ ФНС)
Специалистами ООО «СМ-Консалт» в 2010-2011г. был выполнен проект
по настройке и внедрению системы управления жизненным циклом разработки
программных систем в части управления изменениями и конфигурациями на
основе Microsoft Visual Studio Team Foundation Server 2010 для
Филиала Федерального государственного унитарного предприятия «Главный
научно-исследовательский вычислительный центр Федеральной налоговой
службы» в Приволжском Федеральном округе (Филиал ФГУП ГНИВЦ ФНС России в
ПФО).
28.11.2011 15:05:11 Новая статья: "Всегда ли «Да» – это «Да»? Или как нас вынуждают принимать решения"
Мы предлагаем вашему вниманию цикл статей, в основу которых положены
психологические практики и приемы, позволяющие влиять на решения,
принимаемые людьми. Эта идея была логическим продолжением ряда
выступлений с докладами о коммуникациях в проектах разработки и
внедрения ПО. Давайте, не откладывая в долгий ящик, начнем с самого
простого приема убеждения, с которым сталкиваемся ежедневно в магазинах,
в транспорте, в разговорах с коллегами… да мало ли где еще!
Авторы: Новичков Александр и Карабанова Галина.
Читать -->
10.10.2011 11:16:06 Компания «СМ-Консалт» открывает новое направление продаж - ПО Adobe Connect
Программное обеспечение Adobe Connect является гибкой системой
web-коммуникации с высоким уровнем информационной безопасности. Adobe
Connect предоставляет такие важнейшие функции корпоративного
взаимодействия, как деловое общение и совместная работа сотрудников на
уровне предприятий, дистанционное обучение, организация широкомасштабных
сетевых семинаров и презентаций. Система Adobe Connect базируется на
технологии Adobe Flash, а также Air, и поэтому позволяет подключать
сотрудников к единому пространству взаимодействия через web-браузер с
любых устройств.
17.09.2011 21:40:22 Новая статья: "Разработка прикладного программного обеспечения с использованием Rational Unified Process на Иркутском Авиационном заводе"

На сайте СМ-Консалт открыт новый раздел Статьи наших заказчиков об успешных внедрениях IBM Rational и Microsoft. Статьи для данного раздела пишутся нашими заказчиками и рассказывают о сути проектов внедрения технологий IBM и Microsoft. Первая статья, представленная вашему вниманию написана сотрудниками Иркутского Авиационного Завода (ИАЗ).
Иркутский авиазавод имеет длительный опыт разработки программного
обеспечения для информационной поддержки ключевых бизнес-процессов
предприятия. Однако, в связи с увеличивающейся сложностью и повышением
требований к разрабатываемому программному обеспечению, возникла
настоятельная необходимость усовершенствовать процесс разработки:
повысить качество разрабатываемых программных продуктов,
стандартизировать процесс с увеличением его эффективности.
С целью повышения качества программного обеспечения собственной
разработки и сокращения сроков разработки руководство Управления
информационных технологий (УИТ) Иркутского Авиационного Завода в 2006г. приняло решение о внедрении технологии разработки ПО на базе методологии Rational Unified Process и с использованием инструментов автоматизации IBM Rational.
13.09.2011 12:07:29 Новый тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах»

Компания «СМ-Консалт» представляет новый тренинг, организуемый совместно с компанией «КарьерKаб» - «Коммуникации
и психология межличностных отношений в ИТ-проектах.
Тренинг позволит понять, насколько коммуникации в проектах важнее инструментов, что люди и их взаимоотношения зачастую оказываются решающим фактором, определяющим успех проекта. Если более пятидесяти процентов рабочего времени вы тратите на взаимодействие с заказчиком, если вам небезразлична судьба вашей команды и вы хотите, чтобы ваша команда работала как часы, реализуя проекты точно, вовремя и без перерасхода ресурсов - наш тренинг поможет в этом.
01.08.2011 17:44:25 Наша компания получила отзыв о сотрудничестве с ОАО «Нордеа Банк»

В 2010-2011 гг. наши специалисты провели в Нордеа Банке проект по предварительному обследованию, развертыванию инструментальных средств и ряд тренингов по обучению методологии и работе с продуктами IBM Rational: «Методология разработки программных систем IBM Rational Unified Process», «Управление требованиями с использованием IBM Rational RequisitePro», «Управление изменениями в IBM Rational ClearQuest».
24.06.2011 01:27:57 Бесплатный семинар-вебинар «Повышение эффективности IT подразделений и качества разрабатываемого ПО с использованием современных методологий и технологий»
Компании СМ-Консалт , Legal SoftWaveTM и DNA приглашают Вас посетить бесплатный семинар-вебинар, посвященный обзору технологий и методологий, которые позволяют повысить эффективность ИТ подразделений. На семинаре рассматриваются технологии IBM Rational, Microsoft TFS, а также системы аналитической обработки информации (Business Intelligence) (IBM SPSS, Deductor, QlikView и другие).
Планируемая продолжительность семинара - 8 академических часов.
Место проведения: Санкт-Петербург (очно) и Интернет (для всех желающих: приходите сами и приглашайте друзей!).
Дата и время: 14 июля 2011 в 9 00.
ВНИМАНИЕ: если вы не сможете очно приехать на семинар - это не страшно, так как семинар будет транслироваться через интернет в формате вебинара и к нему, после регистрации, смогут присоединиться все желающие. Трансляция будет осуществляться посредством технологии Adobe Connect Pro , это позволит Вам присоединяться к конференции без установки дополнительного ПО - только интернет браузер.
Смотреть программу -->
07.06.2011 13:02:44 Компания "СМ-Консалт" провела серию успешных семинаров для ГНИВЦ ФНС России

Проведенные семинары были посвящены средствам разработки и тестирования программного обеспечения компании Майкрософт для сотрудников ГНИВЦ ФНС России. Слушатели семинаров отметили высокую квалификацию тренеров компании "СМ-Консалт" по организации учебного процесса и повышению квалификации специалистов, прошедших обучение.
Индивидуальный подход при решении любых вопросов, возникающих в процессе обучения, оперативность принятия решений, гарантированное выполнение взятых на себя обязательств и профессионализм позволили провести обучение на самом высоком уровне.
07.12.2010 12:28:15 Мы идем в Твиттер!

Наша компания открыла аккаунт в системе микроблоггинга Twiter.Теперь все официальные и неофициальные новости будут появляться в нашей ленте в Twitter.
Там же возможно будет задать прямые вопросы специалистам СМ-Консалт, по всем вопросам, связанным как с деятельностью компании, так и с техническими аспектов продуктов IBM и собственных решений СМ-Консалт.
Следуйте за нами!
https://twitter.com/cmconscom
11.11.2010 14:14:14 Осенний марафон Microsoft ALM Road Show
Компания СМ-Консалт совместно с образовательным центром Careerlab провели серию семинаров в рамках мероприятий ALM Roadshow 2.0 в крупнейших городах, расположенных на Волге, – крупных научных центрах, в которых ИТ технологии находятся на высоком уровне. Семинары прошли в Самаре, Нижнем Новгороде и Казани. Cеминары были посвящены использованию новых инструментов MS Visual Studio Team System в проектах разработки ПО.
В семинарах принимали участие представители различных ролей процесса разработки ПО: от разработчиков до руководителей предприятий различного уровня. Темы, обсуждаемые в ходе семинара, вызвали большой интерес аудитории и немалое количество вопросов, на которые были предоставлены исчерпывающие ответы. В процессе семинара также было показано большое количество примеров, которые дают представление о возможностях инструментов MS Team System. Средняя оценка за семинар составила 4,6 балла по пятибальной шкале
08.09.2010 18:37:52 Скидки до 30% на программное обеспечение IBM Rational

Компания СМ-Консалт предлагает для всех желающих на льготных условиях приобрести программное обеспечение IBM Rational. Снижение цен связано с тем, что мы стараемся быть как можно ближе к нашим клиентам, многие из которых постепенно начали преодолевать последствия финансового кризиса.Наше предложение поможет с минимальными издержками приобрести ПО IBM Rational, что является хорошим капиталовложением.
Скидки до 1 декабря 2010 года:
- 20% скидки при покупке IBM Rational ClearCase, ClearQuest, CearCase LT, при приобретении пяти и более лицензий*;
- 30% скидки при покупке пяти любых продуктов IBM Rational + решение или тренинг СМ-Консалт*.
Для получения деталей обязательно свяжитесь с нашими менеджерами
|