Ваш вопрос действительно о "веб-сервисах".Для непрофессионала, объясняющего, о чем все это, прочитайте эту статью в Википедии .
Существует ряд связанных аббревиатур, которые обсуждаются:
SOAP (простой протокол доступа к объектам) - это протокол для отправки запросов в службу и получения ответа.Сообщения кодируются в XML и отправляются по HTTP.
WSDL (язык описания веб-сервисов) - это язык описания сервисов для сервисов на основе SOAP.Он определяет, что находится в сообщениях, и как сообщения связаны со службами.
SOA (Сервис-ориентированная архитектура) по сути является системной архитектурой всистема состоит из множества сервисов SOAP (и других), описанных с использованием WSDL.
(Сторонники SOA говорят о «принципах проектирования», но, по моему циничному мнению, это просто переупаковка / переписывание материалов, которые люди делали в течение 20+ летдругие имена.)
Мне действительно нужно это для сайта электронной коммерции
Спросите своих клиентов.Спросите людей, чьи системы будут взаимодействовать с вашей системой.Спросите поставщиков, чьи компоненты вы намерены встроить в свою систему.
Если вам нужно использовать WS, то какие дополнительные возможности он даст
Если вы должен использовать WS (например, поскольку ваш сайт должен общаться с другими службами, требующими WS), тогда вы должны.Это достаточное оправдание.
Если вам не нужно использовать WS, то вам необходимо сбалансировать преимущества использования WSDL + SOAP с преимуществами какого-либо другого подхода к реализации вашей сети.API-интерфейсы.Эксперт по SOA, вероятно, скажет использовать SOA;Эксперт AJAX, вероятно, скажет иначе.Есть и другие технологии удаленного вызова процедур ... если вам действительно нужны такие вещи.
WSDL + SOAP, безусловно, имеет некоторые преимущества;например,
- машиночитаемые спецификации для ваших веб-API,
- возможность проверки сообщений по схемам XML,
- экосистема существующих служб WSDL,
- принятие в некоторых секторах ИТ.
Но оно имеет и недостатки;например,
- WSDL + SOAP имеют значительную кривую обучения по сравнению с некоторыми альтернативами,
- XML представляет собой сложную схему кодирования - сравнительно дорогой для анализа,
- SOAPтолько претендует на безопасность типов (по сравнению с, скажем, CORBA / IIOP),
- SOAP обычно не используется * в клиентах на основе браузера;JSON или обычный XML обычно используются для приложений AJAX,
- многие думают, что SOA чрезмерно раскручен и держится подальше.
* Тем не менее, может использоваться;Прочитайте эти Статьи IBM DeveloperWorks .
Мой совет (FWIW), если ваша система в первую очередь является веб-сайтом, не нужно для общения сСлужбам SOAP, и не нужно для предоставления API службы SOAP для других ... не беспокойтесь.Вы всегда можете добавить API службы SOAP позже, если вам нужно.