Различия
SOAP является более мощным, и его предпочитают поставщики программных средств (MSFT .NET, Java Enterprise edition, такого рода вещи).
SOAP долгое время (2001-2007 гг.) Рассматривался как протокол выбора для SOA. xml-rpc не так много. REST - это новая дорогая SOA, хотя это и не протокол.
SOAP более многословен, но более эффективен.
SOAP не поддерживается в некоторых старых версиях. Например, нет SOAP-библиотек для классического ASP (что я смог найти).
SOAP плохо поддерживается в python. XML-RPC имеет отличную поддержку в python, в стандартной библиотеке.
SOAP поддерживает передачу на уровне документа, тогда как xml-rpc больше относится к передаче значений, хотя он может передавать такие структуры, как структуры, списки и т. Д.
xm-rpc на самом деле о передаче данных между программами. Это в первую очередь идет через http / https. SOAP-сообщения также могут передаваться по электронной почте.
xml-rpc более юникси. Он позволяет вам делать вещи просто, а когда вы знаете, что делаете, очень быстро развертывать качественные веб-сервисы даже при использовании текстовых редакторов терминала. Делать SOAP таким способом - зоопарк; вам действительно нужна хорошая IDE, чтобы сделать это возможным.
Знание SOAP, тем не менее, будет выглядеть намного лучше в вашем резюме / резюме, если вы претендуете на ИТ-работу в Fortune 500.
xml-rpc имеет некоторые проблемы с наборами символов, отличных от ascii.
XML-RPC не поддерживает именованные параметры. Они должны быть в правильном порядке. Не уверен насчет SOAP, но думаю, что так.