ПРОДУКТИВНОСТЬ РАСТЕТ, ГИБКОСТЬ РЕШЕНИЙ ПОВЫШАЕТСЯ, ВОЗМОЖНОСТИ ПОЛЬЗОВАТЕЛЯ РАСШИРЯЮТСЯ

Разработчик архитектуры ПО Дэн Кахун хотел решить вопрос организации труда временных сотрудников в налоговой компании H&R Block, одном из крупнейших в США нанимателей сезонных работников. Вместо того чтобы использовать традиционные настольные приложения, он оснастил более 12 тыс. местных филиалов компании AJAX-портлетами, функционирующими в инфраструктуре SOA в качестве временных рабочих областей.

Пример Кахуна иллюстрирует растущую тенденцию соединения технологий Web 2.0 с сервисно-ориентированной архитектурой (SOA) для реализации заданий, традиционно выполнявшихся с помощью настольных программ. Такие решения получаются более быстрыми, дешевыми и гибкими. “Web 2.0 используется по многим направлениям, но в основном по двум – социальному и техническому”, — сказал Кевин Хекман, директор по разработке компании TIBCO Software. Фирма H&R Block является заказчиком TIBCO и пользуется её продуктами для реализации SOA-архитектуры.

По словам Хекмана, в социальном аспекте Web 2.0 можно описать как средство передачи процессов публикации в руки самих пользователей. У людей появилась возможность писать блоги и участвовать в проектах типа Wiki. Развивается технология смешивания функций из разных источников (mashup), позволяющая всем желающим компоновать имеющиеся в Web программные компоненты и данные. Все это направлено на реализацию творческих способностей человека.

К тому же, добавляет Хекман, многие сайты и Web-приложения теперь построены на базе AJAX (Asynchronous JavaScript and XML), что сильно упрощает вышеперечисленные действия пользователей: “AJAX и новые типы сервисов постепенно вытесняют привычное настольное ПО. Именно такой передовой подход реализуют продукты Google Docs и Yahoo Mail Plus, которые работают в качестве клиентского интерфейса для архитектуры SOA”.

Эта тенденция привела к росту популярности RIA (rich interface application), mashup, AJAX, RSS, REST (Representational State Transfer) и других областей Web 2.0. Технологии Web 2.0, которые иногда называют Enterprise 2.0, помогают создавать многофункциональные (rich) клиентские интерфейсы для базовых (серверных) SOA-систем. Кроме того, с их помощью сотрудники бизнес-подразделений, незнакомые с программированием, могут использовать сервисы и строить mashup-приложения без участия ИТ-специалистов. С одной стороны, это повышает производительность труда, но с другой — может стать источником проблем.

“Сейчас технологии Web 2.0 быстро развиваются и оказывают влияние на архитектуру SOA, — поясняет Дэн Хашон, технологический руководитель подразделения Grid Business Unit компании EMC. — Со временем инструменты Web 2.0 могут вытеснить Web-сервисы”. По его словам, на интернет-сайтах вроде Google, где раньше использовались протокол SOAP (Simple Object Access Protocol) и интерфейс прикладного программирования JSON/REST (JSON — JavaScript Object Notation), теперь работает лишь последний. И запросто может оказаться, что технология вызова Web-сервисов REST с ее более сильной, чем у SOAP, концентрацией на данных лучше будет отвечать современным запросам пользователей. Правда, ахиллесовой пятой REST остается системная безопасность.

По мнению Джона Крупи, технологического директора фирмы JackBe, поставщика решений на базе Web 2.0, волна технологий, придуманных для домашних пользователей Интернета, теперь катится в корпоративный мир: “Мы переходим от корпоративных систем, построенных вокруг приложений, к Web 2.0, где главную роль играют пользователи. Они могут создавать что-то свое, применять готовое, настраивать всё по своему вкусу и работать сообща. Отовсюду, в любое время и из любого браузера, они могут обращаться к необходимой информации. Если раньше при реализации архитектуры SOA первую скрипку играл инструмент AJAX, то сегодня — mashup. Корпоративные mashup-приложения управляются пользователями и служат их целям”.

Как заметил Рональд Шмельцер, аналитик из компании ZapThink, mashup дополняет SOA: “Вы берете часть функционала у какого-нибудь Web-приложения и соединяете его с другой функцией. Это проще реализовать, если mashup-приложения построены на базе сервисов и на сервисы ориентированы. Другое важное достоинство mashup — поддержка взаимодействия пользователей”. Появляется новый тип предприятий, использующих преимущества Web 2.0, говорит Шмельцер. Ведь этот перспективный подход позволяет сотрудникам одновременно работать по множеству разных направлений, вместо того чтобы все занимались одним и тем же. Внедряя Web 2.0 и SOA, компании могут предоставлять бизнес-персоналу возможность создавать сотни приложений, полезных для их деятельности. “Обратной же стороной такой свободы являются проблемы контроля. Как сделать так, чтобы, работая с этими сервисами, люди не причиняли вред своей организации?”.

У Nexaweb Technologies есть ответ на этот вопрос. По словам ее технологического руководителя Коуча Ви, изучив рынок, фирма решила сотрудничать с компаниями, имеющими опыт в таких областях, как системная интеграция, общее управление, инфраструктура, компоновка сервисов, управление бизнес-процессами и тестирование. Обслуживая заказчиков, Nexaweb занимается созданием mashup-приложений и ПО, а также обработкой информации. Однако mashup-приложениями нужно управлять, и вот тут-то бывают полезны партнерские связи. “Раньше мы думали, что технология mashup по своей природе несовместима с централизованным контролем, и управление просто убьет ее. Однако в корпоративном мире без этого не обойтись”, — поясняет он.

Nexaweb уже выработала стратегию реализации архитектуры SOA и теперь решает следующую задачу: создает корпоративную партнерскую систему для поддержки Web 2.0 и SOA, стараясь задействовать ресурсы, уже имеющиеся на рынке. “Сейчас мы на начальном этапе, — рассказывает Ви. — Будем заниматься партнерскими соглашениями с различными поставщиками SOA-решений и интеграцией с их продуктами. Соединив наше ПО с инфраструктурой SOA, мы сможем создать надежную среду”.

Соединение всего вместе

Основные стимулы для слияния Web 2.0 и SOA

Социальные

  • распространение Web 2.0 для домашних интернет-пользователей;
  • сетевые игры;
  • коммуникации и совместная работа;
  • социальные связи.

Технологические

  • REST;
  • AJAX;
  • динамические языки;
  • RSS/Atom/SSE;
  • блоги и Wiki;
  • Web-сервисы.

Бизнес

  • растущая пропускная способность сетей;
  • рост компьютерных мощностей на границах сети;
  • появление устройств, поддерживающих Web 2.0;
  • быстрота развертывания технологий Web 2.0;
  • популярность ПО как сервиса;
  • архитектура SOA.

Технические

  • коммерциализация концепций Web 2.0;
  • доходы от рекламы;
  • маркетинг с помощью социальных сетей;
  • инновации;
  • высокая стоимость нынешних ИТ-разработок.
Источник: Microsoft.

Как рассказал Винод Пабба, исполнительный директор фирмы Inkriti, выпускающей решения на базе Web 2.0 для электронной коммерции, технологии Web 2.0 и SOA пригодились для переделки Web-сайта бостонского спортивного клуба, когда тот захотел улучшить взаимодействие с 30 тыс. своих клиентов и болельщиков в разных концах страны. Теперь сайт Sports Club/LA обменивается данными с CRM-системой с помощью Web-сервисов. По словам Паббы, тут используется масса инструментов Web 2.0. Например, Web-сервисы вызываются через AJAX-интерфейсы, построенные с применением технологий компании Nexaweb.

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

По словам Юджина Сьюраны, директора по системной инфраструктуре компании LeapFrog Enterprises, технология Web 2.0 позволяет использовать вычислительные ресурсы приложений, ориентированных на организацию сообществ, а не просто отображать “плоские”, не связанные между собой данные. Домашним интернет-пользователям уже прекрасно знакомы сайты типа YouTube и Digg, где можно общаться по интересам с помощью интерактивных функций на базе Web 2.0.

Предприятия, отметил Сьюрана, уже начинают интегрировать свои системы в mashup-приложения, следуя примеру создателей продуктов для домашних пользователей. Однако интеграцию зачастую затрудняет несовместимость форматов данных или информационных ресурсов. “Чтобы предложить работоспособные корпоративные mashup-приложения, надо применять элементы технологии SOA, такие как ESB [шины сервисов предприятия], адаптеры, преобразователи и поисковые сервисы наподобие UDDI [Universal Description, Discovery and Integration]”.

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

LeapFrog проектирует, разрабатывает и продает технологичные продукты для сферы образования. “Нашим первым mashup-приложением стал перьевой компьютер Fly Fusion, который может работать автономно, а также загружать контент и приложения из Интернета”, — рассказал Сьюрана. Fly Fusion взаимодействует с Интернетом через настольный ПК и использует несколько Web-сервисов для взаимодействия со своим специальным сайтом, онлайновым магазином и учебными материалами. Сайт и доступ к материалам обслуживаются системой управления контентом. Онлайновый магазин действует как mashup-приложение, объединяющее ПО Wicket, хостинг которого обеспечивает компания LeapFrog, и систему обработки заказов и платежей другого провайдера, работающую по протоколу SOAP. Соединение всех компонентов обеспечивает система Mule ESB с открытым исходным кодом.

“Хотя ряд компаний уже экспериментирует с этими технологиями, их широкое внедрение в области электронной коммерции начнется через полтора-два года. Если взглянуть на тройку китов онлайновой розничной торговли, то, скажем, Amazon и eBay уже комбинируют контент и приложения, как свои, так и партнерские, — рассказал Сьюрана. — Более консервативные магазины типа Walmart.com пока еще действуют в Интернете самостоятельно, используя лишь немногочисленные возможности Web 2.0 на своей витрине, хотя, быть может, они уже применяют архитектуру SOA и в базовых системах, смешивая функции из разнородных корпоративных приложений и интегрируя их посредством ESB или других магистралей, а не по принципу точка — точка. Но такие компании еще находятся где-то на полпути”.

По мнению Хала Стерна, старшего вице-президента Sun Microsystems, сегодня формируется довольно удачная связка технологий Web 2.0 и традиционных корпоративных приложений. Это можно назвать концепцией SOA+REST. С клиентской стороны обычно используется та или иная REST-архитектура, хотя здесь возможна масса разных вариантов.

Как отмечает аналитик из ZapThink Джейсон Блумберг, архитектура SOA не просто объединяет разные приложения, но поддерживает бизнес-процессы и позволяет им непрерывно меняться. С ее помощью пользователи могут строить приложения из сервисов. “Уже можно говорить об автоматизации сервисов. Сервисно-ориентированные бизнес-приложения [SOBA] представляют собой композитные приложения, скомпонованные из сервисов и поддерживающие бизнес-процессы, — объяснил Блумберг. — SOA наделяет бизнес-пользователя более мощными возможностями, и SOBA станет наилучшим выбором, если бизнес требует максимальной гибкости. Мир SOA сегодня подошел к поворотному этапу: фокус смещается от построения сервисов к их использованию. Отсюда и популярность mashup-приложений, которые объединяют сервисы с многофункциональным пользовательским интерфейсом”. Блумберг разделяет мнение Ви из Nexaweb относительного того, что в корпоративных mashup-приложениях самое главное — управление.

Как отметил Крупи из JackBe, реальной причиной появления SOA стали чрезмерные объемы затрат на интеграцию: “Предприятия интересует не сама эта архитектура и не взаимодействие каких-то систем. Им важно быстро продвигать свои продукты и услуги на рынок”. Его компания для реализации концепции Enterprise 2.0 предлагает семейство решений Presto на базе SOA и Web 2.0.

По словам Томаса Куриана, старшего вице-президента Oracle, сегодня на рынке имеются три ключевые технологии: SOA, Web 2.0 и grid: “Web 2.0 меняет способы доступа к корпоративным приложениям за счет пользовательского интерфейса в стиле браузера, который соединяет две формы работы с данными — транзакции и групповое общение”.

Например, платформа компании SnapLogic, служащая для создания сервисов доступа к интернет-данным, применяет REST-интерфейс для объединения компонентов. “Мы берем данные и переводим их в форму RSS-канала, — рассказал исполнительный директор SnapLogic Крис Мариино. — Наш пользовательский интерфейс похож на Yahoo Pipes, хотя и предназначен не только для RSS. Попросту говоря, это что-то вроде Yahoo Pipes для корпоративных данных или Yahoo Pipes для пользовательских данных”.

По словам Стива Миллза, старшего вице-президента и руководителя группы IBM Software, соединение SOA с Web 2.0 сильно влияет на доступ к информации. Достаточно вспомнить популярность технологии распространения новостей RSS и стандарта Atom. Всё говорит об огромной востребованности концепции Web 2.0, которая позволяет людям обращаться к данным в реальном времени. Так что персональный фактор окажет огромное влияние на развитие SOA”.

Классическим примером реализации Web 2.0 является создание mashup-приложений из разнообразного контента. “Такой подход отвечает потребностям людей, поскольку своевременный доступ к информации оборачивается реальным повышением производительности труда”, — уверен Миллз.

Эксперты находят связь между виртуализацией и SOA

Виртуализация получила широкое распространение в ЦОДах с точки зрения консолидации оборудования, снижения энергозатрат, экономии на охлаждении и упрощения послеаварийного восстановления.

Теперь, по мнению отраслевых аналитиков, эта технология будет играть ключевую роль в переходе на архитектуру SOA. По крайней мере так считает директор Microsoft по виртуализации Дэвид Грешлер, который называет виртуализацию главным инструментом реализации SOA: “Всё взаимосвязано. Именно виртуализация открывает путь к тому, чтобы все элементы ИТ-инфраструктуры могли существовать как самостоятельные единицы, но работали вместе”. Эти элементы включают приложения, различные ОС, ПО для вывода информации на экран, виртуальные машины, дисковую память и сетевые устройства.

По мнению аналитика из компании ZapThink Джейсона Блумберга, между SOA и виртуализацией существует много общего, так как SOA фактически является формой виртуализации приложений: “Но чтобы соединить данные подходы, надо преодолеть определенные препятствия — ведь до сих пор этими технологиями занимались совершенно разные люди. Разработчики SOA никогда не участвовали в дискуссиях о виртуализации, и наоборот”.

Однако, отмечает Блумберг, обсуждение виртуализации на конференциях по SOA говорит о том, что лед тронулся. Так, на SOA World Conference and Expo, состоявшейся в Нью-Йорке в июне этого года, свыше десятка сессий было посвящено виртуализации. “Ее большой плюс состоит в гибкости и продуктивности, которые обязательно потребуются компаниям при масштабировании своих SOA-инфраструктур”, — добавляет Блумберг.

С ним согласен Джонатан Кларк, президент и технологический руководитель компании Thinstall: “По нашей идеологии виртуализация — это возможность упаковывать вычислительные среды в виде изолированных друг от друга областей”.

По словам Грешлера, Microsoft хочет предоставить заказчикам возможность выбирать ту форму виртуализации, которая им нужна: “Здесь есть много подходов, но главным ориентиром должно быть управление”. На конференции по SOA он сказал, что в прошлом году в мире работало около 1 млн. виртуальных серверов, а в ближайшую пару лет их станет намного больше. Microsoft включит виртуализацию в следующую версию своей серверной ОС — Windows Server 2008. “К 2010-му мы поставим 10 млн. копий этой ОС”, — надеется Грешлер.

Внедрение этой технологии он делит на несколько этапов. На первом пользователи осознают, что виртуализация позволяет сэкономить деньги. “На наш взгляд, люди пытаются оптимизировать и сократить регулярные расходы, а виртуализация им в этом помогает”, — говорит Тафик Боубец, основатель и технологический руководитель компании Layer 7 Technologies, предлагающей средства XML-безопасности и построения сетей на базе SOA и Web 2.0.

“На втором этапе, когда вы виртуализируете все больше элементов инфраструктуры, доступ к данным упрощается. До третьего этапа, на котором создается единая виртуализованная структура, пока мало кто добрался. Мы называем такую структуру динамической ИТ, — рассказал Грешлер. — На этом уровне работают такие концепции, как управление на основе политик и самоуправление виртуализированных систем».