Василиса▶ Я жду вашего обращения. Что Вы хотите узнать?
Логотип

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

Веб-службы могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах ( SOAP , XML-RPC и т. д.) и соглашениях ( REST ). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения.

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

Преимущества и недостатки

Преимущества
  • Веб-службы обеспечивают взаимодействие программных систем независимо от платформы. Например, Windows-C#-клиент может обмениваться данными с Java-сервером, работающим под Linux .
  • Веб-службы основаны на базе открытых стандартов и протоколов. Благодаря использованию XML достигается простота разработки и отладки веб-служб.
  • Использование интернет-протокола обеспечивает HTTP -взаимодействие программных систем через межсетевой экран . Это значительное преимущество, по сравнению с такими технологиями, как CORBA , DCOM или Java RMI . С другой стороны, веб-службы не привязаны намертво к HTTP — могут использоваться и другие протоколы.
Недостатки
  • Меньшая производительность и больший размер сетевого трафика по сравнению с технологиями RMI , CORBA , DCOM за счёт использования текстовых XML-сообщений. Однако на некоторых веб-серверах возможна настройка сжатия сетевого трафика.
  • Аспекты безопасности. Ответственные веб-службы должны использовать кодирование, возможно — требовать аутентификации пользователя. Достаточно ли здесь применения HTTPS , или предпочтительны такие решения, как XML Signature, XML Encryption или SAML  — должно быть решено разработчиком.

Примеры

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

Поисковая система Google с 2002 до 2009 года предоставлял веб-службу, которая позволяла заказчикам искать необходимую информацию в интернете так же, как это делают обычные пользователи. По удобству это несравнимо, например, с автоматическим разбором HTML-текста Google всяких страниц.

Amazon.com имеет веб-службу, предоставляющую различные веб-базированные услуги. [ источник не указан 237 дней ]

Магазин приложений

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

Технологии реализации

Веб-служба на основе UDDI (практически вышел из употребления в 2010м) и SOAP (используется и в 2018 м в консервативных сферах)

Архитектура

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

  • заказчик ( service requester );
  • исполнитель ( service provider );
  • каталог ( service broker ).

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

  • XML : Расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных;
  • SOAP : Протокол обмена сообщениями на базе XML;
  • WSDL : Язык определения внешних интерфейсов, который определяет взаимодействие (контракт) между потребителем и веб-службами SOAP . Написан на базе XML;
  • UDDI : Универсальный интерфейс распознавания, описания и интеграции (Universal Discovery, Description and Integration). Каталог веб-служб и сведений о компаниях, предоставляющих веб-службы во всеобщее пользование или конкретным компаниям. Пока UDDI существуют, однако, только в небольших фирменных сетях и ещё не нашли широкого распространения в открытом интернете;
  • JSON : Более эффективный язык разметки, ставший массовым в 2010х годах.

Методы разработки

Существуют средства автоматизации разработки веб-служб, разделяющиеся на две основные группы. При разработке снизу-вверх сначала пишутся имплементирующие классы, а из их исходного текста генерируются WSDL-файлы, документирующие службу. Недостатком этого метода является подверженность Java-классов частым изменениям. При подходе сверху-вниз сначала подготавливается WSDL, а из него генерируется скелет Java-класса, имплементирующего службу. Этот путь считается более трудным, зато приводит к более чистым и лучше защищенным от изменений решениям. Пока формат сообщений, которыми обмениваются заказчик и исполнитель, не меняется, изменения в каждом из них не нарушают взаимодействия. Эта техника называется иногда «contract first», так как исходной точкой является WSDL («договор» между заказчиком и исполнителем).

Платформы

Веб-службы разворачиваются на серверах приложений . Некоторые серверы приложений:

Литература

  • Дергачев А. М.  Проблемы эффективного использования сетевых сервисов / Научно-технический вестник СПбГУ ИТМО. 2011. № 1 (71). С. 83-87
  • Dover D., Dafforn E. Search Engine Optimization Secrets. Indianapolis: Wiley Publishing, Inc., 2011. 456 p.
  • Ouzzani, M., Bouguettaya A. Semantic Web Services for Web Databases. Springer Science+Business Media, 2011. 155 p.

Ссылки

Примечания

  1. Веб-сервис в словаре компьютерных терминов
  2. Web services   (англ.) в TheFreeDictionary
© 2014-2020 ЯВИКС - все права защищены.
Наши контакты/Карта ссылок