Jump to content

Веб-сервис

(Перенаправлено с веб-сервиса )

Веб -сервис ( WS ) — это либо:

  • услуга, предлагаемая электронным устройством другому электронному устройству, связывающемуся друг с другом через Интернет , или
  • сервер, работающий на компьютерном устройстве, прослушивающий запросы на определенном порту в сети, обслуживающий веб-документы ( HTML , JSON , XML , изображения). [ нужна ссылка ]

В веб-службе веб-технология, такая как HTTP, используется для передачи машиночитаемых форматов файлов, таких как XML и JSON.

На практике веб-служба обычно предоставляет объектно-ориентированный веб-интерфейс для сервера базы данных, используемый, например, другим веб-сервером или мобильным приложением , которое предоставляет пользовательский интерфейс конечному пользователю. Многие организации, которые предоставляют данные в формате HTML-страниц, также предоставляют эти данные на своем сервере в формате XML или JSON, часто через веб-службу, чтобы обеспечить возможность распространения . Другим приложением, предлагаемым конечному пользователю, может быть гибридный веб-приложение , в котором веб-сервер использует несколько веб-сервисов на разных машинах и компилирует контент в один пользовательский интерфейс.

Веб-сервисы (общие)

[ редактировать ]

Асинхронный JavaScript и XML

[ редактировать ]

Асинхронный JavaScript и XML (AJAX) — доминирующая технология для веб-сервисов. Разработанный на основе комбинации HTTP-серверов, клиентов JavaScript и Plain Old XML (в отличие от SOAP и веб-служб W3C), теперь он часто используется с JSON , а также с XML или вместо него.

Передача репрезентативного состояния (REST) ​​— это архитектура хорошо работающих веб-сервисов, которые могут функционировать в масштабах Интернета.

В документе 2004 года W3C определяет REST как ключевую отличительную особенность веб-сервисов:

Мы можем выделить два основных класса веб-сервисов:

  • REST -совместимые веб-службы, в которых основной целью службы является манипулирование XML-представлениями веб-ресурсов с использованием единообразного набора операций без сохранения состояния ; и
  • произвольные веб-службы, в которых служба может предоставлять произвольный набор операций.
    W3C, Архитектура веб-сервисов [1]

Веб-сервисы, использующие языки разметки

[ редактировать ]

Существует ряд веб-сервисов, использующих языки разметки:

Веб -API — это разработка веб-сервисов, в которой акцент сместился на более простые коммуникации на основе передачи репрезентативного состояния (REST). [2] Restful API не требуют протоколов веб-служб на основе XML ( SOAP и WSDL) для поддержки своих интерфейсов.

Веб-сервисы W3C

[ редактировать ]

Что касается веб-сервисов W3C, W3C определил веб-сервис как:

Веб-сервис — это программная система, предназначенная для поддержки межмашинного взаимодействия по сети. Он имеет интерфейс, описанный в машинно-обрабатываемом формате (в частности, WSDL ). Другие системы взаимодействуют с веб-сервисом способом, предписанным его описанием, с использованием SOAP-сообщений, обычно передаваемых с использованием HTTP с XML -сериализацией в сочетании с другими веб-стандартами.

- W3C, Глоссарий веб-сервисов [3]

Веб-службы W3C могут использовать протокол SOAP поверх HTTP, что обеспечивает менее затратное (более эффективное) взаимодействие через Интернет, чем через проприетарные решения, такие как EDI/B2B. Помимо SOAP через HTTP, веб-службы также могут быть реализованы на других надежных транспортных механизмах, таких как FTP . В документе 2002 года Рабочая группа по архитектуре веб-сервисов определила архитектуру веб-сервисов, требующую стандартизированной реализации «веб-сервиса».

Объяснение

[ редактировать ]
Архитектура веб-сервисов: поставщик услуг отправляет файл WSDL в UDDI. Запрашивающая служба связывается с UDDI, чтобы узнать, кто является поставщиком необходимых ему данных, а затем связывается с поставщиком услуг, используя протокол SOAP. Поставщик услуг проверяет запрос на обслуживание и отправляет структурированные данные в файле XML, используя протокол SOAP. Этот XML-файл будет снова проверен инициатором запроса на обслуживание с использованием файла XSD.

Термин «Веб-сервис» описывает стандартизированный способ интеграции веб-приложений с использованием открытых стандартов XML , SOAP, WSDL и UDDI через магистраль Интернет-протокола . XML — это формат данных, используемый для хранения данных и предоставления метаданных вокруг них, SOAP используется для передачи данных, WSDL используется для описания доступных сервисов, а UDDI перечисляет доступные сервисы.

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

Многие организации используют несколько программных систем для управления. [ нужна ссылка ] Разным программным системам часто необходимо обмениваться данными друг с другом, а веб-служба — это метод связи, который позволяет двум программным системам обмениваться этими данными через Интернет. Программная система, которая запрашивает данные, называется запросчиком услуг , тогда как программная система, которая будет обрабатывать запрос и предоставлять данные, называется поставщиком услуг .

Разное программное обеспечение может использовать разные языки программирования, и, следовательно, существует потребность в методе обмена данными , который не зависит от конкретного языка программирования. Однако большинство типов программного обеспечения могут интерпретировать теги XML. Таким образом, веб-сервисы могут использовать файлы XML для обмена данными.

Необходимо определить правила взаимодействия с различными системами, например:

  • Как одна система может запрашивать данные из другой системы.
  • Какие конкретно параметры необходимы в запросе данных.
  • Какова будет структура получаемых данных? (Обычно обмен данными осуществляется в файлах XML, а структура файла XML проверяется на соответствие файлу .xsd.)
  • Какие сообщения об ошибках отображать при несоблюдении определенного правила общения, чтобы облегчить устранение неполадок .

Все эти правила связи определены в файле под названием WSDL (язык описания веб-служб), который имеет .wsdl расширение. (Предложения по автономным веб-сервисам ( AWS ) направлены на разработку более гибких веб-сервисов, которые не полагаются на строгие правила. [а] )

Каталог под названием UDDI (универсальное описание, обнаружение и интеграция) определяет, к какой программной системе следует обращаться для получения каких типов данных. Таким образом, когда одной программной системе требуется один конкретный отчет/данные, она обращается к UDDI и выясняет, с какими другими системами она может связаться для получения этих данных. Как только программная система узнает, с какими другими системами ей следует связаться, она свяжется с этой системой, используя специальный протокол, называемый SOAP (простой протокол доступа к объектам). Система поставщика услуг сначала проверит запрос данных, обратившись к файлу WSDL, а затем обработает запрос и отправит данные по протоколу SOAP.

Автоматизированные методы проектирования

[ редактировать ]
Веб-сервисы в сервис-ориентированной архитектуре .

Автоматизированные инструменты могут помочь в создании веб-сервиса. Для сервисов, использующих WSDL, можно либо автоматически генерировать WSDL для существующих классов (модель «снизу вверх»), либо создавать скелет класса на основе существующего WSDL (модель «сверху вниз»).

  • Разработчик, использующий восходящую модель, сначала пишет реализующие классы (на каком-либо языке программирования), а затем использует инструмент создания WSDL для предоставления методов из этих классов в виде веб-службы. Его проще разработать, но может быть сложнее поддерживать, если исходные классы часто изменяются. [5]
  • Разработчик, использующий нисходящую модель, сначала пишет документ WSDL, а затем использует инструмент генерации кода для создания скелета класса, который необходимо дополнять. Эта модель обычно считается более сложной, но она позволяет создавать более чистые конструкции и, как правило, более устойчива к изменениям. Пока форматы сообщений между отправителем и получателем не изменяются, изменения в самих отправителе и получателе не влияют на веб-службу. Этот метод также называется « сначала контракт», поскольку WSDL (или контракт между отправителем и получателем) является отправной точкой. [6]
  • Разработчик, использующий подмножество WSDL (SWSDL). [7] (т. е. WSDL с подмножеством операций в исходном WSDL) может выполнять тестирование веб-сервисов и разработку сверху вниз.

Критики веб-сервисов, отличных от RESTful, часто жалуются, что они слишком сложны. [8] и основаны на крупных поставщиках программного обеспечения или интеграторах, а не на типичных реализациях с открытым исходным кодом .

Также существуют опасения по поводу производительности из-за использования веб-службами XML в качестве формата сообщений и SOAP/HTTP для упаковки и транспортировки. [9]

Регрессионное тестирование веб-сервисов

[ редактировать ]

Функциональное и нефункциональное тестирование веб-сервисов выполняется с помощью анализа WSDL. Регрессионное тестирование проводится путем выявления изменений, внесенных при обновлении программного обеспечения. Потребности в регрессионном тестировании веб-сервисов можно разделить на три категории: изменения в WSDL, изменения в коде и выборочное повторное тестирование операций. Мы можем отразить три вышеупомянутые потребности в трех промежуточных формах Subset WSDL: [7] а именно: разностный WSDL (DWSDL), модульный WSDL (UWSDL) и сокращенный WSDL (RWSDL) соответственно. Эти три подмножества WSDL затем объединяются в комбинированный WSDL (CWSDL), который в дальнейшем используется для регрессионного тестирования веб-службы. Это поможет в автоматическом управлении изменениями веб-сервисов (AWSCM), [10] путем выбора соответствующих тестовых примеров для создания сокращенного набора тестов из старого набора тестов. [11]

Тестирование веб-сервисов также можно автоматизировать с помощью нескольких инструментов автоматизации тестирования, таких как SoapUI , Oracle Application Testing Suite (OATS), [12] [13] Единое функциональное тестирование, Selenium и т. д.

Управление изменениями веб-сервиса

[ редактировать ]

Работа, связанная с записью и визуализацией изменений, внесенных в веб-сервис. Визуализация и вычисление изменений могут быть выполнены в виде промежуточных артефактов (Subset WSDL). [7] Понимание расчета влияния изменений полезно при тестировании, нисходящей разработке и сокращении регрессионного тестирования. АВСММ [10] — это инструмент, который может идентифицировать операции подмножества в файле WSDL для создания подмножества WSDL.

Обнаружение и поиск веб-сервисов

[ редактировать ]

Хотя UDDI был задуман как каталог сервисов и стал средством обнаружения веб-сервисов, многие поставщики прекратили выпуск своих решений или репозиториев UDDI в период с 2005 по 2008 год, включая Microsoft, SAP, IBM и другие. [14] [15] Ключевое исследование, опубликованное на конференции WWW2008 (Пекин, Китай). [16] представил состояние веб-сервисов на основе SOAP и пришел к выводу, что только 63% доступных веб-сервисов на основе SOAP на момент исследования были фактически активными или могли быть вызваны. Исследование также показало, что поисковые системы становятся идеальным источником поиска веб-сервисов по сравнению с реестрами сервисов, такими как UDDI, из-за их сложности конструкции. [17]

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Сравните: Oya 2008 , «В рамках текущих веб-сервисов […] системы заинтересованных сторон должны следовать предопределенным правилам для конкретной бизнес-службы, включая правила о бизнес-протоколах для отправки/получения сообщений и о работе системы. […] Более гибкий механизм. желательно, чтобы свободно построенные и автономно работающие системы могли обмениваться бизнес-сообщениями без заранее согласованных строгих правил. Мы называем это автономными веб-сервисами (AWS) и предложили структуру под названием динамическая гармонизация моделей (DMH) с ее алгоритмом, который динамически адаптирует различные модели бизнес-процессов. между системами […]». [4]
  1. ^ «Архитектура веб-сервисов § Связь с Всемирной паутиной и архитектурами REST» . W3C . Проверено 11 ноября 2017 г.
  2. ^ Бенслиман, Д.; Дустдар, С.; Шет, А. (2008). «Мэшапы сервисов: новое поколение веб-приложений» . IEEE Интернет-вычисления . 10 (5): 13–15. дои : 10.1109/MIC.2008.110 . S2CID   8124905 .
  3. ^ «Глоссарий веб-сервисов § Веб-сервис» . W3C . 11 февраля 2004 года . Проверено 24 января 2017 г.
  4. ^ Оя, Макото (2 сентября 2008 г.). «Автономные веб-сервисы на основе динамической гармонизации моделей». В Ойе, Макото; Уда, Рюя; Ясунобу, Тизуко (ред.). На пути к устойчивому обществу в повсеместных сетях: 8-я конференция IFIP по электронному бизнесу, электронным услугам и электронному обществу (I3E 2008), 24–26 сентября 2008 г., Токио, Япония . ИФИП: Достижения в области информационных и коммуникационных технологий. Том. 286. Springer Science & Business Media (опубликовано в 2008 г.). п. 139. ИСБН  9780387856902 . Проверено 19 августа 2015 г.
  5. ^ «Создание восходящих веб-сервисов» . Затмение . Проверено 11 ноября 2017 г.
  6. ^ «Создание нисходящих веб-сервисов» . Затмение . Проверено 11 ноября 2017 г.
  7. ^ Jump up to: а б с Чатурведи, Анимеш (2014). Подмножество WSDL для доступа к подмножеству службы для анализа . 2014 6-я Международная конференция IEEE по технологиям и науке облачных вычислений. п. 688. дои : 10.1109/CloudCom.2014.149 . ISBN  978-1-4799-4093-6 .
  8. ^ Брэй, Тим (28 октября 2004 г.). «WS-Количество страниц» . TBray.org . Проверено 22 апреля 2011 г.
  9. ^ Грей, НАБ (2005). «Производительность промежуточного программного обеспечения Java — Java RMI, JAX-RPC и CORBA» . Университет Вуллонгонга : 31–39. Результаты, представленные в этой статье, показывают, что характер данных об ответах оказывает большее влияние на относительную производительность, чем допускалось в большинстве предыдущих исследований.
  10. ^ Jump up to: а б Чатурведи, Анимеш (2014). Автоматизированное управление изменениями веб-сервисов AWSCM — инструмент . 2014 6-я Международная конференция IEEE по технологиям и науке облачных вычислений. п. 715. дои : 10.1109/CloudCom.2014.144 . ISBN  978-1-4799-4093-6 .
  11. ^ Чатурведи, Анимеш; Гупта, Атул (2013). Поддерживаемый инструментами подход для проведения эффективного регрессионного тестирования веб-сервисов . 2013 г. 7-й международный симпозиум IEEE по обслуживанию и развитию сервис-ориентированных и облачных систем. п. 50. дои : 10.1109/MESOCA.2013.6632734 . ISBN  978-1-4673-4889-8 .
  12. ^ Пакет тестирования приложений Oracle
  13. ^ Тестирование веб-сервисов с использованием Oracle Application Testing Suite.
  14. ^ Крил, Пол (16 декабря 2005 г.). «Microsoft, IBM, SAP прекращают разработку реестра UDDI» . Инфомир . Проверено 28 мая 2022 г.
  15. ^ КуиннРадич (27 апреля 2021 г.). «Удаление служб UDDI из серверной операционной системы — приложения Win32» . docs.microsoft.com . Проверено 28 мая 2022 г.
  16. ^ «WWW2008 – WWW 2008: 17-я Международная конференция Всемирной паутины (Добро пожаловать)» . Архивировано из оригинала 4 октября 2022 г. Проверено 28 мая 2022 г.
  17. ^ Аль-Масри, Эйхаб; Махмуд, Кусай Х. (21 апреля 2008 г.). «Исследование веб-сервисов во всемирной паутине» . Материалы 17-й международной конференции по Всемирной паутине . WWW '08. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники. стр. 795–804. дои : 10.1145/1367497.1367605 . ISBN  978-1-60558-085-2 . S2CID   12570844 .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 900082839745141c84651d59114a3d85__1721828460
URL1:https://arc.ask3.ru/arc/aa/90/85/900082839745141c84651d59114a3d85.html
Заголовок, (Title) документа по адресу, URL1:
Web service - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)