Научная статья на тему 'Стандарты веб-сервисов для создания распределенных информационных систем'

Стандарты веб-сервисов для создания распределенных информационных систем Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
2764
441
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПРЕДЕЛЕННЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ / ВЕБ-СЕРВИСЫ / ВЕБ-СЛУЖБЫ / JAVASCRIPT / UDDI / WSDL / SOAP / DISTRIBUTED INFORMATION SYSTEMS / WEB-SERVICES

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Воронцов Юрий Алексеевич, Козинец Артур Валерьевич

В статье рассматриваются набор стандартов, используемых для построения распределенных информационных систем. Распределенная информационная система в узком смысле, с позиции программного обеспечения (ПО) это совокупность взаимодействующих друг с другом программных компонент. Каждая из таких компонент может рассматриваться как программный модуль (приложение), исполняемый в рамках отдельного процесса. Реализацию технологии взаимодействия обеспечивает семейство взаимодействующих протоколов. В частности рассмотрена возможность применения стандартных протоколов UDDI, WSDL и SOAP, а также особенности их применения.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Standards of web-services for building distributed information systems

In the article considered a set of standards used to build distributed information systems. In a narrow sense from the software perspective, a distributed information system is a set of software components with interaction between themselves. Each component can be considered as a software module or application executable as a separate process. The interaction techniques implementation is provided by a family of interactive protocols. The possibility of applying standard protocols UDDI, WSDL and SOAP was described, as well as specificity of their usage.

Текст научной работы на тему «Стандарты веб-сервисов для создания распределенных информационных систем»

info@agequal.ru

Электронный научный журнал «Век качества» ISSN 2500-1841 http: //www .agequal.ru 2015, № 3 http://www.agequal.ru/pdf/2015/AGE QUALITY 3 2015.pdf Ссылка для цитирования этой статьи:

Воронцов Ю.А. Козинец А.В. Стандарты веб-сервисов для создания распределенных информационных систем // Электронный научный журнал «Век качества». 2015. №3. С. 55-72. Режим доступа: http://www.agequal.ru/pdf/2015/315005.pdf (доступ свободный). Загл. с экрана. Яз. рус., англ.

УДК 004.7

Стандарты веб-сервисов для создания распределенных информационных

систем

Воронцов Юрий Алексеевич

доктор технических наук, профессор,

заведующий кафедрой информационных систем, Московский технический университет связи и информатики 125993, Москва, ул. Народного Ополчения, 32, каб.409а

\voronlsov. 1943@шаИ. ги

Козинец Артур Валерьевич

заведующий лабораториями кафедры информационных систем Московский технический университет связи и информатики 125993, Москва, ул. Народного Ополчения, 32, каб.407

ко2\не1н @т1и €¡2. ги

Аннотация. В статье рассматриваются набор стандартов, используемых для построения распределенных информационных систем. Распределенная информационная система в узком смысле, с позиции программного обеспечения (ПО) - это совокупность взаимодействующих друг с другом программных компонент. Каждая из таких компонент может рассматриваться как программный модуль (приложение), исполняемый в рамках отдельного процесса. Реализацию технологии взаимодействия обеспечивает семейство взаимодействующих протоколов. В частности рассмотрена возможность применения стандартных протоколов UDDI, WSDL и SOAP, а также особенности их применения.

Электронный научный журнал «Век качества» Online scientific journal «Age of Quality»

№ 3 (2015) ISSN 2500-1841

http://www.agequal.ru info@agequal.ru

Ключевые слова: распределенные информационные системы; веб-сервисы; веб-службы; JavaScript; UDDI; WSDL; SOAP.

Веб-служба, веб-сервис (англ. web service) — идентифицируемая веб-адресом программная система со стандартизированными интерфейсами [1].

WEB-программирование - это раздел программирования, ориентированный на разработку веб-сайтов и веб-приложений (программ), работающих в сети интернет. WEB-программа - это совокупность операторов языков web-программирования, с помощью которых создаются коды веб-программ, или их еще называют скриптами, сценариями. Делятся на клиентские и серверные.

Рис. 1. Схема обработки WEB-запроса. Разработано авторами.

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

Если разработчик применял скриптовые языки, функционирующие на стороне сервера, приходится применять исполняемые модули (.exe), функционирующие на самом сервере. Только таким образом можно

info@agequal.ru

осуществлять доступ к базам данных [2], и на основе полученной информации формировать страницы, передаваемые затем удаленному пользователю.

Программы на клиентских языках обрабатываются на стороне web-клиента. Как правило, их выполняет (интерпретирует) браузер. Одним из типов программ, предназначенных для выполнения на клиент-машине, являются сценарии, например, JavaScript (VBScript) [3]. Исходный текст сценария представляет собой часть HTML веб-страницы, поэтому сценарий JavaScript передается клиенту вместе с документом, в состав которого он входит. Обрабатывая HTML-документ, браузер обнаруживает исходный текст сценария и запускает его на выполнение. Код скрипта JavaScript размещается непосредственно на HTML-странице. Простой пример:

<html> <body> <br>

Это обычный HTML документ. <br>

<scri pt language="JavaScri pt">

document-writeC^ это JavaScript!") </scri pt> <br>

Вновь документ HTML.

</body>

</html>

Чтобы видеть, как этот скрипт работает, запишите данный пример как обычный файл HTML и откройте его в браузере, имеющем поддержку языка JavaScript. В результате Вы увидите три строки текста:

Это обычный HTML документ. А это JavaScript! Вновь документ HTML.

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

info@agequal.ru

такой программы, сервер запускает ее и передает параметры, входящие в состав запроса. Средства для генерации подобного запроса обычно входят в состав HTML-документа. Результаты своей работы программа оформляет в виде HTML-документа и передает их веб-серверу, а последний, в свою очередь, дополняет полученные данные HTTP-заголовком и передает их клиенту. Этот файл может иметь расширения: HTML, PHP, ASP, ASPX, Perl, SSI, XML, DHTML, XHTML. К серверным языкам программирования можно отнести: PHP [4], Perl [5], Python [6], любой .NET язык программирования (технология ASP.NET [7]).

В отличие от клиентских скриптов, которые выполняются непосредственно при загрузке страницы браузером клиента, серверные скрипты требуют предварительной компиляции. А потому для их выполнения необходимо на сервере установить специальное программное обеспечение (компилятор). К технологиям веб-программирования, предназначенным для создания серверных скриптов, относят PHP, Perl, ASP.NET, Ruby. Среди них наиболее популярными являются технологии PHP и ASP.NET.

Наиболее распространённый способ внедрения серверного JavaScript в HTML-страницу - тэг <SERVER>. Вы можете использовать тэг <SERVER> в любой ситуации; обычно, однако, вместо него используются обратные кавычки, если Вы генерируете имена или значения атрибутов для HTML-страницы.

Большая часть операторов между тэгами <SERVER> и </SERVER> не появляется на HTML-странице, высылаемой клиенту. Эти операторы выполняются на сервере. Однако вывод вызовов функции write появляется в результирующем HTML.

Простой пример приложения:

<P>This time you are

<SERVER>

write(request.newname); client.oldname = request.newname;

</SERVER>

<h3>Enter your name</h3>

Получив данный участок кода, машина выполнения генерирует HTML на базе значения request.newname в операторе write. Во втором операторе она просто выполняет операцию JavaScript, присваивая значение request.newname свойству client.oldname. Она не генерирует никакого HTML. Итак, если request.newname будет "Mr. Ed," машина выполнения генерирует из предыдущего отрывка следующий HTML-фрагмент:

<P>This time you are

Mr. Ed

<h3>Enter your name</h3>

Возможности серверных скриптов довольно богаты. Серверные скрипты могут, например, обрабатывать данные с форм, генерировать динамические страницы или отсылать и принимать cookies. С помощью серверных скриптов можно создавать гостевые книги, чаты, опросы, хранить защищенные паролем данные. Также ни один интернет-магазин не обойдется без серверных скриптов. С их помощью пользователь может рассчитать общую стоимость покупки, вносить изменения в свою покупательскую «корзину», фиксировать время и дату заказа и т.п. Кроме того, при помощи серверных скриптов можно создавать целые системы управления сайтом (так называемые «движки») со встроенными визуальными редакторами, форумами и т.п.

Серверные языки дают возможность организации взаимодействия с системой управления базами данных (или СУБД) — сервером базы данных, в которой упорядоченно хранится информация, которая может быть вызвана в любой момент.

Рис. 2. Взаимодействие веб-сервера и сервера БД. Разработано

авторами.

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

Рассмотрим пример. Мы уже подключились к серверу БД, где есть таблица users. Для того чтобы прочитать список пользователей сайта необходимо выполнить SQL-запрос "SELECT * FROM users". Ниже приведен текст скрипта, выполняющего запрос данных о пользователях сайта (идентификатор, логин, адрес электронной почты) и формирование HTML-таблицы на основании полученных данных:

<?php

$sql = "SELECT * FROM users"; $result = mysql_query($sql)

or die("Ошибка:".mysql_error()); $table = "<table>";

while ($row = mysql_fetch_assoc($result)) {

$table .= "<tr>";

$table .= "<td>".$row[,id,]."</td>"; $table .= "<td>".$row[,login,]."</td>"; $table .= "<td>".$row[,email,]."</td>"; $table .= "</tr>";

}

$table .= "</table> "; echo $table;

Распределенная информационная система.

Распределенная информационная система (в узком смысле, с позиции ПО) - это совокупность взаимодействующих друг с другом программных компонент [2]. Каждая из таких компонент может рассматриваться как программный модуль (приложение), исполняемый в рамках отдельного процесса. Реализацию технологии взаимодействия обеспечивает семейство взаимодействующих протоколов. Современные распределённые информационные системы рассматриваются как распределенные системы программного обеспечения. Связь между цепочкой взаимодействующих процессов — суть распределенных систем.

Пример последовательности взаимодействия трех сетевых служб при обработке заказа на приобретение товара приведен на Рис. 3.

Рис. 3. Последовательность обмена сообщениями. Разработано

авторами.

Диаграмма последовательности, соответствующая взаимодействию трех служб, показанному на Рис. 3 представлена на Рис. 4.

Рис. 4. Диаграмма последовательности. Разработано авторами.

Иногда распределенной информационной системой называют такую распределённую систему, в которой функционирует более одного сервера БД [2]. Пример архитектуры такой распределённой клиент-серверной информационной системы представлен на Рис. 5, а архитектура ее комплекса технических средств на Рис. 6.

ГИБДД

НТМЬклиенты

Представление результата обработки

К

2. ЗАПРОС

РО>

Жилье

Налоги

Земля

Рис. 5. Архитектура распределенной ИС. Разработано авторами.

Веб-сервер

Сервер БД

Рис. 6. Архитектура КТС. Разработано авторами.

Примеры задач, для решения которых используются распределенные информационные системы:

• портал государственных услуг;

• электронные торговые площадки;

• доступ к информации о курсах валют;

• сервис предоставления котировки акций;

• сервис поиска минимальной цены;

• сервис проверки номера кредитной карточки;

• сервис проверки недействительных (украденных) документов;

• сервис бронирования авиационных билетов.

Требования, которые выдвигаются при построении распределенных

информационных систем, обычно включают:

• Необходима поддержка неоднородного информационного пространства, в том числе возможность получать данные из разных типов СУБД.

info@agequal.ru

• Нужная информация распределена и хранится на физически разных, географически разнесённых серверах БД.

• Полученная из различных источников информация должна быть интегрирована в один документ.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• Запрос на сервис не должен требовать от web-клиента программирования.

Решение задач распределенных информационных систем возможно с использованием Web-сервисов.

Web-сервисы XML.

Веб-служба (Web Service) - это удаленная бизнес функция, к которой можно обратиться, передав некоторый набор входных параметров и получив в ответ выходные значения. Это программное обеспечение, предоставляющее доступ к данным и определённой функциональности в распределённой среде. То есть если web-приложение предназначено для организации пользовательского интерфейса к системе через web-браузер, то web-сервис - для программного доступа со стороны других приложений с использованием Интернет-протоколов.

Веб-служба XML (Web Service XML) — это приложение или блок находящегося на web-cepвере выполняемого кода, функционирование которого основано на применении стандартных форматов XML (SOAP, WSDL, UDDI).

Сервис (service) - ресурс, реализующий бизнес-функцию, обладающий следующими свойствами:

• является повторно используемым;

• определяется одним или несколькими явными технологически-независимыми интерфейсами;

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

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

info@agequal.ru

методов из компонентов, которые принадлежат и поддерживаются независимыми провайдерами.

Веб-сервисы решают задачу интеграции приложений различной природы и построения распределенных ИС. В этом заключается основное принципиальное отличие веб-сервисов от предшественников - технологий взаимодействия [8].

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

TCP/IP - широко распространенный протокол, понимаемый всеми сетевыми устройствами, от мэйнфреймов до смартфонов и планшетов;

HTML - язык разметки гипертекста, применяемый для отображения информации устройствами пользователей;

XML (extensible Markup Language) - расширяемый язык разметки, в настоящее время применяется для работы с любыми типами данных.

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

Таким образом, веб-сервисы решают исходную задачу - задачу интеграции приложений различной природы и построения распределенных ИС.

• Веб-сервисы подобны DLL библиотекам, но имеют следующие отличительные особенности:

• выполняются на стороне сервера;

• предоставляют набор методов, доступных внешним клиентам;

• исполняют веб-методы и возвращают результаты клиентам;

• веб-сервисы и их клиенты могут быть написаны на разных языках и/или разных платформах.

Web-сервисы базируются на трех основных Web-стандартах.

Стандарт SOAP (Simple Object Access Protocol) —это протокол, т. е. набор правил для создания приложений, которые могут вызывать методы удаленных объектов SOAP поставщика сервиса. Где именно находятся эти удаленные объекты — в другом каталоге, где-то в корпоративной интрасети или в Интернете — для клиентских программ, использующих SOAP, абсолютно неважно. SOAP основан на XML. По сути дела, каждая передача информации между клиентом и сервисом является отдельным XML-документом, который написан по правилам SOAP. Спецификация SOAP определяет ХМL «конверт» для передачи сообщений [9], метод для кодирования программных структур данных в формате XML, а также средства связи по протоколу HTTP.

Стандарт WSDL (Web Services Description Language) — язык для описания программных интерфейсов Web-сервисов [10]. Описание может включать протокол, адрес сервера, номер используемого порта, список доступных операций, формат запроса и ответа и т.п.

Стандарт UDDI (Universal Description, Discovery and Integration) — стандарт для индексации Web-сервисов [9]. UDDI задает бизнес-реестр, в котором провайдеры Web-сервисов могут регистрировать сервисы, а разработчики — искать необходимые им сервисы.

На Рис. 7 показано, как эти три стандарта взаимодействуют друг с другом.

Клиент

UDDI

WSDL

SOAP

Сервер 1

Служба обнаружения

Сервер 2

Web-сервис

Рис. 7. Сценарий работы веб-сервиса. Разработано авторами.

Серверы приложений являются хранилищами Web-сервисов и делают их доступными через протоколы HTTP GET, HTTP POST и НТТР БОДР.

Важной особенностью модели вычислений, основанной на Web-сервисах XML, является то, что их клиентам не требуется знать язык, на котором написан Web-сервис; достаточно знать адрес Web-сервиса и методы, которые он поддерживает.

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

Существующие Web-сервисы описываются в WSDL-документах, которые располагаются либо на сервере приложений, либо в специальных XML-хранилищах. WSDL-документ может ссылаться на другие WSDL-документы и документы XSD (XML Schema), в которых описаны типы данных, используемые

Web-сервисами. XML-хранилища используются для управления WSDL-документами. Внутри WSDL-документа находится адрес (URL) Web-сервиса. Web-сервисы описаны и проиндексированы в бизнес - реестре, содержащем адреса (URL) WSDL-документов.

Рис. 8. Архитектура SOAP. Разработано авторами.

Сообщения между веб-сервисом и его пользователем пакуются в SOAP-конверты (SOAP envelopes). Сообщения содержат либо запрос на осуществление какого-либо действия, либо ответ - результат выполнения этого действия. Конверт и его содержимое закодировано языком XML, и его достаточно просто понять. Вот как выглядит простой SOAP-запрос, который отправляется через HTPP к веб-сервису:

<env:Envelope

xmlns:env="http://www.w3.org/2001/06/soap-envelope">

<env:Body>

<m:Vali datePostcode

env:encodi ngStyle=http://www.w3.org/2001/06/soap-encodi ng

xmlns:m="http://www.somesi te.com/Postcode">

<Postcode>WClA8GH</Postcode>

<Country>UK</Country>

</m:Vali datePostcode>

</env:Body>

</env:Envelope>

Ключевые элементы SOAP-конверта узнать достаточно просто: это два параметра (<postcode> ("почтовый индекс") и <country> ("страна")), которые содержатся внутри элемента под названием <ValidatePostcode>. Этот элемент является названием веб-сервиса, к которому мы обращаемся с запросом. Прочие данные в конверте, такие как кодировка текста и версия SOAP помогают веб-сервису правильно обработать запрос. Ответ будет выглядеть:

<env:Envelope

xmlns:env="http://www.w3.org/2001/06/soap-envelope"> <env:Body>

<m:Vali datePostcodeResponse

env:encodi ngStyle=http://www.w3.org/2001/06/soap-encodi ng

xmlns:m="http://www.somesi te.com/Postcode">

<Vali d>Yes</Vali d>

</m:Vali datePostcodeResponse>

</env:Body>

</env:Envelope>

Элемент <ValidatePostcode> из запроса поменялся на элемент <ValidatePostcodeResponse> в ответе на запрос. В этом элементе содержится только один элемент <Valid>, значение которого обозначает, запрошенный почтовый индекс верен.

Литература

1. Википедия - Веб-служба [Электронный ресурс]. - Режим доступа: https://ru.wikipedia.org/wiki/Веб-служба (дата обращения 11.07.15г.).

2. Architecture of user applications for network with mobile nodes / Vorontsov Y.A., Farkhadov M.P., Blinova O.V., Abramenkov A.N. // 18-я международная конференция «Распределенные компьютерные и коммуникационные сети: управление, вычисление, связь» (DCCN-2015). С 460-465.

info@agequal.ru

3. JavaPortal.ru - всё о Java и Javascript: Управление сценариями просмотра Web-страниц [Электронный ресурс]. - Режим доступа: http: //www.j avaportal. ru/j avascript/articles/j suspw. html (дата обращения 11.07.15г.).

4. Opennet: Введение в PHP [Электронный ресурс]. - Режим доступа: http://www.opennet.ru/docs/RUS/php intro/ (дата обращения 11.07.15г.).

5. Opennet: Краткий экскурс в Perl-программирование [Электронный ресурс]. - Режим доступа: http://www.opennet.ru/docs/RUS/perl_help/ (дата обращения 11.07.15г.).

6. Сообщество MoscowPython [Электронный ресурс]. - Режим доступа: https://www.python.ru/ (дата обращения 11.05.15г.).

7. Адам Фримен ASP.NET 4.5 с примерами на C# 5.0 для профессионалов, 5-е издание = Pro ASP.NET 4.5 in C#, 5th Edition. — М.: «Вильямс», 2014. — 1120 с. — ISBN 978-5-8459-1878-9.

8. Anatomy of a Web Service: XML, SOAP and WSDL for Platform-independent Data Exchange [Электронный ресурс]. - Режим доступа: http://www.webreference.com/authoring/web service/index.html (дата обращения 11.07.15г.).

9. IBM developerWorks Россия: Практическое использование Web-сервисов в IBM Lotus Domino [Электронный ресурс]. - Режим доступа: http://www.ibm.com/developerworks/ru/library/web-services1/index.html (дата обращения 11.05.15г.).

10.Хабрахабр - Разработка: Веб-сервисы в теории и на практике для начинающих [Электронный ресурс]. - Режим доступа: https://habrahabr.ru/post/46374/ (дата обращения 11.05.15г.).

Standards of web-services for building distributed information systems

Vorontsov Yuri Alexeevich

Doctor of technics, Professor,

Head of the Department of information systems, Moscow Technical University of Communications and Informatics #32, Narodnogo Opolcheniya street, Moscow, 123993, Russain Federation

yvorontsov.1943@mail. ru

Kozinets Arthur Valerievich

Head of laboratories of the Department of information systems Moscow Technical University of Communications and Informatics #32, Narodnogo Opolcheniya street, Moscow, 123993, Russain Federation

kozinets@mtuci2. ru

Abstract. In the article considered a set of standards used to build distributed information systems. In a narrow sense from the software perspective, a distributed information system is a set of software components with interaction between themselves. Each component can be considered as a software module or application executable as a separate process. The interaction techniques implementation is provided by a family of interactive protocols. The possibility of applying standard protocols UDDI, WSDL and SOAP was described, as well as specificity of their usage.

Key words: distributed information systems; web-services; JavaScript; UDDI; WSDL; SOAP.

REFERENCES

1. Vikipediya - Veb-sluzhba [Elektronnyy resurs]. - Rezhim dostupa: https://ru.wikipedia.org/wiki/Veb-sluzhba (data obrashcheniya 11.07.15g.).

2. Architecture of user applications for network with mobile nodes / Vorontsov Y.A., Farkhadov M.P., Blinova O.V., Abramenkov A.N. // 18-ya mezhdunarodnaya konferentsiya «Raspredelennye komp'yuternye i kommunikatsionnye seti: upravlenie, vychislenie, svyaz'» (DCCN-2015). S 460-465.

3. JavaPortal.ru - vse o Java i Javascript: Upravlenie stsenariyami prosmotra Web-stranits [Elektronnyy resurs]. - Rezhim dostupa:

http : //www.j avaportal. ru/j avascript/articles/j suspw. html (data obrashcheniy a 11.07.15g.).

4. Opennet: Vvedenie v PHP [Elektronnyy resurs]. - Rezhim dostupa: http://www.opennet.ru/docs/RUS/php_intro/ (data obrashcheniya 11.07.15g.).

5. Opennet: Kratkiy ekskurs v Perl-programmirovanie [Elektronnyy resurs]. -Rezhim dostupa: http://www.opennet.ru/docs/RUS/perl_help/ (data obrashcheniya 11.07.15g.).

6. Soobshchestvo MoscowPython [Elektronnyy resurs]. - Rezhim dostupa: https://www.python.ru/ (data obrashcheniya 11.05.15g.).

7. Adam Frimen ASP.NET 4.5 s primerami na C# 5.0 dlya professionalov, 5-e izdanie = Pro ASP.NET 4.5 in C#, 5th Edition. — M.: «Vil'yams», 2014. — 1120 s. — ISBN 978-5-8459-1878-9.

8. Anatomy of a Web Service: XML, SOAP and WSDL for Platform-independent Data Exchange [Elektronnyy resurs]. - Rezhim dostupa: http : //www. webreference. com/authoring/web_service/index. html (data obrashcheniya 11.07.15g.).

9. IBM developerWorks Rossiya: Prakticheskoe ispol'zovanie Web-servisov v IBM Lotus Domino [Elektronnyy resurs]. - Rezhim dostupa: http://www.ibm.com/developerworks/ru/library/web-services1/index.html (data obrashcheniya 11.05.15g.).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

10.Khabrakhabr - Razrabotka: Veb-servisy v teorii i na praktike dlya nachinayushchikh [Elektronnyy resurs]. - Rezhim dostupa: https://habrahabr.ru/post/46374/ (data obrashcheniya 11.05.15g.).

i Надоели баннеры? Вы всегда можете отключить рекламу.