Основные различия между веб-службами SOAP и RESTful в Java

Последующий вопрос этот пост:

В настоящее время я имею небольшое представление о различиях между SOAP и RESTful Services.

Мой вопрос в том, когда я должен использовать SOAP, и когда я должен использовать RESTful; какой из них "лучше", когда речь идет о производительности/скорости или обработке запросов?

Я впервые внедряю RESTful (java) и хочу узнать больше об этом; Раньше я занимался SOAP.

Ответ 1

REST почти всегда будет быстрее. Основным преимуществом SOAP является то, что он предоставляет механизм обслуживания для описания себя клиентам и для рекламы их существования.

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

В целом, когда вы публикуете API для внешнего мира, который либо сложен, либо может измениться, SOAP будет более полезен. Помимо этого, REST обычно является лучшим вариантом.

Ответ 2

REST vs SOAP Web Services

Я вижу, что множество новых веб-сервисов реализовано с использованием REST в настоящее время, а не SOAP. Давайте отступим назад второй и объясните, что такое REST.

Что такое веб-служба REST

Условное обозначение REST означает Передача состояния представления, это в основном означает, что каждый уникальный URL-адрес представляет собой представление некоторых объект. Вы можете получить содержимое этого объекта с помощью HTTP GET, чтобы удалите его, вы можете использовать POST, PUT или DELETE, чтобы изменить объект (на практике большинство служб используют для этого POST).

Кто использует REST?

Все веб-службы Yahoo используют REST, включая Flickr, del.icio.us API использует его, pubsub, bloglines, technorati, и eBay, и Amazon имеют веб-службы как для REST, так и для SOAP.

Кто использует SOAP?

Google швы должны быть последовательными в осуществлении своих веб-сервисов для используйте SOAP, за исключением Blogger, который использует XML-RPC. Ты будешь найти веб-сервисы SOAP во многих корпоративных программах.

REST vs SOAP

Как вы могли заметить, компании, о которых я упоминал, используют REST api не было очень долго, и их apis вышел год в основном. Таким образом, REST - это, безусловно, модный способ создать веб-сайт службы, если создание веб-сервисов может когда-либо быть модным (давайте посмотрим правде в глаза вы используете мыло для мытья, и вы отдыхаете, когда устали). Главный Преимущества веб-служб REST:

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

Простота использования - иногда проверка жесткого типа, придерживается Контракт Инструменты разработки Для использования веб-служб иногда подбрасывать между ними легче. Например, веб-сайт Google AdWords сервис действительно трудно потреблять (в CF в любом случае), он использует SOAP заголовки и ряд других вещей, которые делают его довольно сложным. С другой стороны, веб-сервис Amazon REST иногда может быть сложным разбор, потому что он может быть сильно вложен, и схема результата может изменяться довольно немного в зависимости от того, что вы ищете.

Какая бы архитектура вы ни выбрали, убедитесь, что она проста для разработчиков получить доступ к нему и хорошо документироваться.

Freitag, P. (2005). "REST vs SOAP Web Services" . Получено из http://www.petefreitag.com/item/431.cfm 13 июня 2010 г.

Ответ 3

REST - это архитектура. REST даст читаемые человеком результаты. REST - без гражданства. Службы REST легко кэшируются.

SOAP - это протокол. Он может работать поверх JMS, FTP, Http.

Ответ 4

SOAP

Стандартный протокол доступа к объектам (SOAP), язык XML, определяющий архитектуру сообщений и форматы сообщений, используется веб-службами, содержащими описание операций. WSDL - это язык, основанный на XML, для описания веб-сервисов и способов доступа к ним. будет работать на SMTP, HTTP, FTP и т.д. Требуется поддержка промежуточного программного обеспечения, четко определенный механизм для определения служб, таких как WSDL + XSD, WS-Policy SOAP вернет данные на основе XML

REST Репрезентативные переводы государственных услуг (RESTful). это веб-службы второго поколения. Веб-службы RESTful, обмениваются данными через HTTP, чем службы на основе SOAP, и не требуют XML-сообщений или определений WSDL-сервиса-API. для REST не требуется промежуточное ПО, требуется только поддержка HTTP. Стандарт WADL, REST может возвращать XML, обычный текст, JSON, HTML и т.д.

Ответ 5

  • REST не имеет определения интерфейса WSDL [Web Description Language].

  • REST - это HTTP, но SOAP может быть связан с любыми транспортными протоколами, такими как HTTP, FTP, SMTP, JMS и т.д.

Ответ 6

Отдых VS SOAP

SOAP:

► SOAP - это простой протокол доступа к объектам, который работает на TCP/UDP/SMTP.
► Сообщения ответа на запрос чтения и записи SOAP в формате XML.
► SOAP использует интерфейс для определения сервисов.
► SOAP более безопасен, так как он имеет собственную безопасность и четко определенные стандарты.
► SOAP следует за RPC и Document style для определения веб-сервисов.
► SOAP использует SOAP-UI в качестве клиентских инструментов для тестирования.

REST

► REST представляет собой передачу состояния представления, которая использует базовые протоколы HTTP.
► REST - без гражданства.
► REST - это архитектурный стиль, который используется для описания и определения веб-сервисов.
► REST может читать и записывать ответы на запросы ответа в JSON/XML/Plain HTML.
► REST использует URI для каждого ресурса, который используется в веб-службе. Ресурс может быть способом текстового текста и т.д.
► REST использует набор VERB, таких как HTTP GET, POST, PUT, DELETE.
► REST легко развивается и легко управляется по сравнению с интерфейсом SOAP.
► REST имеет небольшие клиентские инструменты или плагины, которые могут быть легко интегрированы в браузер.
► Службы REST имеют возможность кэширования.

Ответ 7

  • REST означает Передача репрезентативного состояния, где SOAP означает Протокол простого доступа к объектам.

  • SOAP определяет собственную безопасность, где REST наследует безопасность от лежащий в основе транспорта.

  • SOAP не поддерживает обработку ошибок, но REST имеет встроенную ошибку обработки.

  • REST является легким и не требует <сильного > синтаксического анализа XML. REST может использоваться любым клиентом, даже веб-браузером с Ajax и Javascript. REST потребляет меньше полосы пропускания, для каждого сообщения не требуется заголовок SOAP.

    • REST полезен для любого протокола, который предоставляет URI. Игнорируйте точку 5 для REST, как указано ниже на рисунке.

SOAP vs REST

Ответ 8

Мыльные веб-службы:

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

RestWeb-Services:

  • Полностью безстоящие операции: для операций с отсутствующим CRUD (создавать, читать, обновлять и удалять).
  • Ситуации кэширования: если необходимо кэшировать информацию.

Ответ 9

Веб-служба SOAP всегда выполняет операцию POST, тогда как с помощью REST вы можете выбрать определенные методы HTTP, такие как GET, POST, PUT, DELETE. Пример: чтобы получить элемент с помощью SOAP, вы должны создать запрос xml, но в случае REST вы можете просто указать идентификатор элемента в самом URL-адресе.

Ответ 10

REST проще использовать по большей части и является более гибким. В отличие от SOAP, REST не должен использовать XML для обеспечения ответа. Мы можем найти веб-службы на основе REST, которые выводят данные в разделе "Разделяемое значение CSV", "Обозначение объектов JavaScript" (JSON) и "Действительно простой синдикат" (RSS). Мы можем получить требуемый результат в форме, которая легко анализируется на языке, который нам нужен для нашего приложения. REST более эффективен (использует более мелкие форматы сообщений), быстро и ближе к другим веб-технологиям в философии дизайна.

Ответ 11

Разница между отдыхом и мылом введите описание изображения здесь