Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум по веб-сервисам.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

1.Введение в веб-сервисы

1.1Основы веб-сервисов

Сегодня в большинстве случаев взаимодействие в сети Интернет происходит посредством передачи текстовой или графической информации. Эти взаимодействия осуществляются с помощью протокола HTTP. Большая часть передаваемой при этом информации представлена на языке HTML, теги которого позволяют отобразить ее в браузере в понятном для пользователя виде. Этого уровня взаимодействия вполне достаточно, когда в качестве конечного потребителя предаваемых данных выступает человек. Однако для программно-ориентированного взаимодействия этот способ коммуникации подходит плохо.

Существует множество технологий, предназначенных для интеграции приложений через сеть. К их числу относятся: COM/DCOM, CORBA/IIOP, XML-RPC и RMI. Некоторые из этих технологий считаются устаревшими, другие активно применятся до сих пор, но ни одна из них по разным причинам не смогла полностью разрешить проблему программно-ориентированного взаимодействия через сеть. Веб-сервисы по своей сути базируются на идеях позаимствованных у этих технологий и являются дальнейшим их развитием. При этом при развитии технологии веб-сервисов основными принципами являлись: независимость от платформы и языка программирования, простота реализации, поиска веб-сервисов и интеграции приложений с их помощью. Кроме того, технология веб-сервисов является общепризнанной и поддерживается большинством крупных компаний, которые принимают активное участие в утверждении и дальнейшей разработке стандартов в этой области в рамках консорциума W3C (http://www.w3.org/).

Так что же представляют собой веб-сервисы? Ответ на этот вопрос можно найти в определении, которое приводится в глоссарии по веб-сервисам [i.1], размещенном на сайте W3C: «Веб-сервисом называется программная система, разработанная для поддержания взаимодействия между двумя компьютерами посредством сети. Ее публичные интерфейсы и привязки определены и описаны посредством XML (а именно WSDL). Описание этой программной системы может быть найдено другими программными системами, которые могут взаимодействовать с ней согласно этому описанию посредством SOAP сообщений, обычно передаваемых с помощью HTTP».

Как видно из этого определения, оно задает лишь общие границы веб-сервисов и ничего не говорит о способах их реализации, используемой платформе и протоколе общения. К примеру, использование протокола HTTP вовсе не является обязательным, и он может быть с легкостью заменен SMTP или другим протоколом с помощью привязок описываемых в WSDL файле веб-сервиса. На применение языков программирования также не накладывается никаких ограничений. На данный момент поддержка веб-сервисов уже добавлена в большинство языков программирования в виде стандартных библиотек. Многие среды разработки также предоставляют средства поддержки веб-сервисов, которые позволяют программистам работать с ними, не вдаваясь в подробности их функционирования.

1.2Использование веб-сервисов

При создании веб-сервисов преследовалось множество целей и возможности их применения довольно широки. Веб-сервисы могут применяться для:

Осуществления B2B (Business-to-Business) транзакций. По своей сути именно это применение и подтолкнуло производителей программного обеспечения к разработке технологии веб-сервисов. Основная идея заключается в том, что веб-сервисы должны позволять производить интеграцию бизнес процессов отдельных компаний «на лету», т.е. без участия в этом процессе программистов.

Например, в качестве предприятия рассмотрим крупный магазин. Для его функционирования требуется регулярное пополнение склада необходимыми товарами от поставщиков. Веб-сервисы позволяют полностью автоматизировать этот процесс. С помощью реестра веб-сервисов складское программное обеспечение находит веб-сервис, предоставляющий данные по нужным товарам. Далее с его помощью оно может найти поставщика, который предоставляет конкретный товар на самых выгодных условиях. Затем с помощью веб-сервисов этого поставщика складское программное обеспечение может произвести резервирование и заказ на доставку необходимых товаров.

Интеграции внутренних систем отдельных компаний. Веб-сервисы выступают в качестве удобного средства для интеграции различных информационных систем внутри компании. Например, с их помощью можно произвести интеграцию ERP системы, обеспечивающей управление ресурсами предприятия, и CRM системы, которая работает с заказчиками.

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

Использования в качестве готовых модулей для разработчиков. К примеру, независимый разработчик может создать веб-сервис, производящий некие сложные математические вычисления на быстром сервере, и другие разработчики могут использовать его в своих программах, вместо того, чтобы писать этот алгоритм самим, а потом нагружать этими вычислениями компьютер пользователя.

Предоставления некоторой информации через Интернет. Примером такого использования веб-сервисов может служить веб-сервис, предоставляющий прогноз погоды. Данные, полученные из него, могут использоваться как на различных сайтах предоставляющих прогноз погоды, так и в обычных приложениях, приложениях исполняемых на мобильных телефонах и карманных компьютерах.

При всем разнообразии вариантов использования веб-сервисов не следует забывать, что они не являются продуктом для конечного пользователя, в отличие от сайтов, которые только визуализируются в браузерах. Веб-сервис представляет собой приложение, позволяющее использовать свою функциональность другими приложениями, которые могут функционировать в различных средах и на клиентах разных типов.