Web-сервисы, виды, технологии. REST. OData

Автор работы: Пользователь скрыл имя, 20 Октября 2014 в 13:25, реферат

Описание работы

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

Содержание работы

1. Определение сервиса 3
2. Требования к SOA 3
3. Функции Web-сервисов 4
4. Основные технологии Web-сервисов 5
5. Виды Web-сервисов 9
6. REST 10
7. OData 14
8. Используемые ресурсы 19

Файлы: 1 файл

Курсовая СТП.docx

— 109.92 Кб (Скачать файл)

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего образования

Тульский государственный университет

Кафедра прикладной математики и информатики

 

 

 

 

 

 

 

 

 

 

Контрольно-курсовая работа

по курсу: «Современные технологии программирования»

на тему: «Web-сервисы, виды, технологии. REST. OData»

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выполнил: ст. гр. 530202 Шачнева. Е. А.

 

Проверил:  доцент  каф. ПМиИ Смирнов О. И.

 

 

 

Тула

2014

Содержание

1. Определение сервиса         3

2. Требования к SOA         3

3. Функции Web-сервисов         4

4. Основные технологии Web-сервисов       5

5. Виды Web-сервисов         9

6. REST           10

7. OData           14

8. Используемые ресурсы         19

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Определение сервиса

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

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

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

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

2.  Требования к SOA

SOA, будучи практической концепцией, должна соответствовать определенным требованиям, предъявляемым к ней современным состоянием бизнес-отношений и информационных технологий, а также тенденциями их совместного развития:

  • обеспечивать преемственность инвестиций в IT, сохранение существующих информационных систем и их совместное эффективное использование для повышения ROI от IT-вложений;
  • обеспечивать реализацию различных типов интеграции: 
    - пользовательская интеграция (user integration) - обеспечение взаимодействия информационной системы с конкретным персонифицированным пользователем; 
    - интеграция приложений (application connectivity) - обеспечение взаимодействия приложений; 
    - интеграция процессов (process integration) - интеграция бизнес-процессов; 
    - информационная интеграция (information integration) - интеграция с целью обеспечения доступности информации и данных; 
    - интеграция новых приложений (build to integrate) - интеграция новых приложений и сервисов в существующие информационные системы.
  • обеспечивать поэтапность внедрения вновь созданных и миграции существующих информационных систем;
  • иметь стандартизованную технологическую обеспеченность реализации и инструментарий разработки, совокупно предоставляющие наилучшие возможности повторного использования приложений, внедрения новых и миграции существующих информационных систем;
  • позволять реализацию различных моделей построения информационных систем, в особенности таких как портальные решения, grid-системы и on-demand-системы.

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

3.  Функции Web-сервисов

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

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

Таким образом Web services обеспечивают построенную на открытых стандартах информационную инфраструктуру, посредством которой организации могут:

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

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

 

4. Основные технологии Web-сервисов

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

  • Создатель конкретного веб-сервиса определяет формат запросов к нему и формат ответов на данные запросы;
  • С любого комьютера в Интернет можно сделать запрос к данному веб-сервису;
  • Веб-сервис выполняет заданную последовательность действий и отправляет обратно результат.

Таким образом, все Веб-сервисы базируются на применении открытых, утверждаемых консорциумом ИТ-сообщества стандартах и протоколах, ключевыми из которых являются следующие:

  • SOAP (Simple Object Access Protocol) - протокол доступа к простым объектам, т.е. механизм для передачи информации между уделенными объектами на базе протокола HTTP и некоторых других Интернет-протоколов. Более подробную информацию о данном стандарте можно найти на странице "Ссылки";
  • WSDL (Web Services Description Language) - язык описания Web-сервисов. Подробная спецификация находится в разделе "Документы" ;
  • UDDI (Universal Description, Discovery and Integration) - универсальное описание, обнаружение и интеграция - упрощенно говоря, протокол поиска ресурсов в Интернете.

 

 

 

 

 

 

 

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

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

В следующих разделах мы рассмотрим три основных Web-стандарта, на которых базируются Web-сервисы SOAP, WSDL и UDDI, более подробно.

  • SOAP — Simple Object Access Protocol

SOAP — это стандарт для отсылки  и получения сообщений по Internet. Изначально этот протокол был  предложен фирмой Microsoft в качестве  средства для удаленного вызова  процедур (RPC, Remote Procedure Call) по протоколу HTTP, а спецификация SOAP 1.0 (Userland, Microsoft, Developmentor) была тесно связана с Component Object Model. Фирма IBM и ряд других  компаний, в том числе Lotus, внесли  определенный вклад в развитие  этого протокола, и его стандарт  был направлен на рассмотрение  комитетом W3C.

Спецификация SOAP определяет XML-«конверт» для передачи сообщений, метод для кодирования программных структур данных в формате XML, а также средства связи по протоколу HTTP.

SOAP-сообщения бывают  двух типов: запрос (Request) и ответ (Response). Запрос вызывает метод  удаленного объекта, ответ возвращает  результат выполнения данного  метода. Ниже приведены примеры  запроса и ответа в формате SOAP.

 
  


 

 

 

                                   

Спецификация SOAP определяет формат кодирования, который, в свою очередь, задает способ представления данных в XML-формате.

  • WSDL — Web Services Description Language

Для того чтобы приложения могли использовать Web-сервисы, программные интерфейсы последних должны быть детально описаны — с этой точки зрения язык WSDL играет ту же роль, что и язык Interface Definition Language (IDL) в распределенных вычислениях. Описание может включать такую информацию, как протокол, адрес сервера, номер используемого порта, список доступных операций, формат запроса и ответа и т.п.

Для описания этой информации было предложено несколько языков. Одним из них был язык Service Description Language (SDL), разработанный Microsoft и входивший в первую версию Microsoft SOAP Toolkit. Компания IBM переработала спецификацию и, использовав спецификацию Network Accessible Service Specification Language (NASSL), выпустила NASSL Toolkit как часть SOAP4J. Идеи, реализованные в NASSL, повлияли на спецификацию языка SOAP Contract Language (SCL), предложенную Microsoft. В настоящее время обе спецификации (NASSL и SDL/SCL), а также предложения других фирм учтены в спецификации языка WSDL. Для описания бизнес-логики IBM и Microsoft работают над спецификацией языка Web Services Flow Language (WSFL).


 

 

 

 

 

 

 

 

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

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

  • UDDI — Universal Description, Discovery and Integration

Задача UDDI — предоставить механизм для обнаружения Web-сервисов. UDDI задает бизнес-реестр, в котором провайдеры Web-сервисов могут регистрировать сервисы, а разработчики — искать необходимые им сервисы. Компании IBM, Microsoft и Ariba создали собственные UDDI-реестры (в скором времени эти реестры будут объединены в Web-реестр), в одном из которых разработчики могут зарегистрировать свои Web-сервисы, после чего данные будут автоматически реплицированы в другие реестры (См. рис. 5).

 


 

 

 

 

 

UDDI базируется на элементах четырех типов: Business Entity, Business Service, Binding Template и Technology Model. Элемент Business Entity описывает индустрию, предоставляющую данный Web-сервис. Этот элемент может включать описания категорий для данной индустрии, облегчающие более детальный поиск сервисов.

Business Service — это класс сервисов  в рамках определенной отрасли  промышленности или услуг. Каждая  отрасль принадлежит определенному  элементу Business Entity.

Информация о работе Web-сервисы, виды, технологии. REST. OData