Все-таки бизнес-логику проще описывать на более легковесных языках, поэтому интерес к такого рода проектам С/C++ невысок. Тем более, достаточно много фреймворков, которые делают тоже на php/python/ruby…
Именно по этому мы и используем в своих проектах для встраиваемых систем gSOAP. Хотя вопросов к нему достаточно, и он генерит не очень красивые оплётки.
Обычно быстродействие упирается в БД, которая стоит за такими сервисами.
И пытаться выжать быстродействия из протокола, который построен на XML поверх HTTP — странно как-то, не находите?
У нас в высоконагруженных системах всё как-то больше ASN1 используется…
Кроме быстродействия (о нем упомянули уже) есть встраиваемые системы которые не могут по каким-то причинам использовать иные языки. Вот тут даже что-то описано из реальности…
В свое время искал библиотеку для работы с SOAP в C/C++, остановился на cSOAP — простая, практически топорная библиотека. Но зато очень легко смог её поковырять на предмет формата ответа/запроса, что web-сервисы от 1С стали меня понимать.
gSoap имеет лицензионные ограничения и не годится для комерческого использования, и код, переписанный с С на С++ не впечетляет. В свое время исследовал этот вопрос и остановился на Apache Axis2c. Отсутствуют выше перечисленные недостатки, плюс производительнее, чем gSoap.
У gSOAP есть коммерческая лицензия, под которой его можно использовать в коммерческих продуктах.
Кроме того есть gSOAP Public License, которая разрешает коммерческое использование при условии отсылки авторам gSOAP модификаций gSOAP, сделанных при его использовании.
Использовал gSOAP в небольших проектах. Очень не плохая штука, когда надо быстро наладить транспорт меж клиентом и сервером. Оч хорошо при работе если клиент и сервер на C++. Был проект на C++ сервер и на PHP клиент — поимели немало проблем, но, думаю, это особенности работы с SOAP на PHP.
Пишем веб сервис используя gSOAP