Основные различия между веб-службами 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
Разница между отдыхом и мылом ![введите описание изображения здесь]()