будущее уже сегодня ПАЛАГИН АНТОН AKA TONY Спецвыпуск: Хакер, номер #065, стр. 065-018-3 технология web-служб получила широкое распространение только в XXI веке, хотя и раньше возникали идеи сделать максимально тонкие клиенты с помощью браузера. После того как мир, содрогаясь, переполз в третье тысячелетие, на свет божий выполз новый компонентный гад. Что за гад? Это технология создания приложений, которые передают друг другу информацию по протоколу TCP/IP, уже распространившийся с ПК на мобильные платформы и встраиваемые устройства. Данные запаковываются в пакеты XML согласно спецификациям SOAP, которые затем передаются между компонентами. Отображение информации происходит с помощью браузера и динамических страниц HTML. Создать службу можно при помощи специального набора разработчика от IBM или Apache либо c помощью сред разработки MS Visual Studio 2003 и 2005. Подобное решение позволяет избежать множества проблем, присущих старым компонентным технологиям. Языковые и платформенные различия автоматически решаются с помощью HTML и XML. Браузер играет роль универсального тонкого графического клиента. Проблемы блокировки ресурсов и транзакций решаются самим сервером и используемым сервером базы данных. Однако в технологии web-служб есть и своя ложка дегтя: избыточный трафик — за счет пакетов SOAP и, конечно, динамических страниц HTML, на которых отображаются результаты, введенные пользователем. «Дегтя» прибавляет и слишком длительное время отклика, которое тратится на передачу данных по сети, парсинг XML-документов, генерацию HTML-страниц и, наконец, на рендеринг документов в окне браузера. Вот и выясняется, что технология web-служб неприменима в приложениях реального времени, мобильном секторе и секторе встраиваемых устройств. Однако эти технологии находят широкое применение в реализации инфраструктуры бизнес-процессов. реальные задачи (отличные от бизнес-процессов) включают в себя интеграцию различных устройств и операционных систем, поэтому выбрать какую-то одну компонентную технологию невозможно. Обычно используется гибридная схема. Например, в аутсорсинговой компании была поставлена задача реализовать информационную систему. Для того чтобы реализовать эту задачу, разработали такие решения: — С ПОМОЩЬЮ WEB-СЛУЖБ ПРЕДОСТАВЛЯЕТСЯ СТАТИСТИЧЕСКАЯ И АНАЛИТИЧЕСКАЯ ИНФОРМАЦИЯ ДЛЯ ПРОЦЕССОВ ЗАКАЗЧИКА, РУКОВОДСТВА И ОТДЕЛА КОНТРОЛЯ КАЧЕСТВА. — С ПОМОЩЬЮ КОМПОНЕНТОВ НА БАЗЕ DCOM, CORBA И Т.Д. ОСУЩЕСТВЛЯЕТСЯ СОЗДАНИЕ БИЛДОВ, ДОКУМЕНТАЦИИ И КОНТРОЛЬ ВЕРСИЙ. Иногда бывает целесообразно частично отказаться от формализации взаимодействия компонент предлагаемой технологии. Если же без технологии действительно не обойтись, применимость такой формализации лучше ограничить. к примеру необходимо разработать систему измерительных кластеров, управляемых с одного пульта. Допустим, кластеры анализируют данные о погоде и составляют прогноз по всем уголкам планеты. Кластеры работают под управлением QNX, оператор этой системы будет сидеть за пультом под управлением Windows XP. Компоненты, которые работают на пульте, можно формализовать с помощью технологии .NET Remoting. Также с помощью .NET будет реализовываться программа управления кластерами для оператора. Компоненты, работающие на кластере, организуются как обыкновенные библиотеки и несколько программ-демонов. Демоны управляются с пульта через специальный коммуникатор по протоколу XML-RPC, который при необходимости можно расширить до нужных рамок. В принципе, XML можно также использовать для связи между любыми компонентами, этот язык никак не ограничивает оперативность действий разработчиков. Прогнозы погоды, подготовленные кластерами, а также диагностическая и статистическая информация об их работе аккумулируется в отдельной базе данных, доступ в которую возможен через механизм web-служб. Доступ к этой информации по Сети ограничивается для обыкновенных пользователей (посетителей сайта прогноза погоды) и для заказчиков и разработчиков системы с помощью технологии WS-Security. |