Создание веб-сервисов и интеграция ESB для приложения ASP.Net? - PullRequest
3 голосов
/ 02 февраля 2012

У нас есть приложение ASP.Net C #, которое требует определенной реализации веб-сервисов для интеграции с другими приложениями. В настоящее время мы изучаем сервисный стек, а также используем ESB, например. Mule.

Я пытаюсь найти лучший способ интеграции ESB, подобного Mule, в наше приложение ASP.Net.

Нужно ли нам встроить веб-сервис в наше приложение ASP.Net, чтобы ESB мог интегрироваться с ним?

Если да, каков будет хороший подход для выбора типа веб-службы (например, REST, WCF, SOAP, Servicestack), который будет совместим с приложением ASP.Net и Mule?

Ответы [ 2 ]

2 голосов
/ 02 февраля 2012

Звучит задом наперед.С чем вам нужно интегрироваться и какие возможности вы пытаетесь предоставить?

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

То, что вы делаете в веб-службе, зависит от вас, то есть вы можете, например, подключиться к ESB.Ничто не мешает вам сделать это.ServiceStack также поддерживает хостинг в существующем ASP.NET (или приложении MVC). См. Пример Hello World для различных способов настройки ServiceStack.

REST / RPC связан с дизайномваши веб-сервисы и ServiceStack поддерживают обе модели.т.е. наследовать от RestServiceBase , если вы хотите предоставить разные реализации, когда служба вызывается с разными HTTP-глаголами.Унаследуйте ServiceBase , если вы хотите, чтобы одна и та же реализация использовалась независимо от того, как она была вызвана. В этой статье показано различие между REST и RPC / SOAP - и тем, как вы можете поддерживать оба в ServiceStack.

Так что, если вы выставляете одну операцию (или хотите поддержать SOAP), используйте ServiceBase , если вы выставляете «Ресурс», где вы хотите разрешить управление им с помощью различных HTTP-глаголов, используйте RestServiceBase .

2 голосов
/ 02 февраля 2012

Нужно ли нам встроить веб-сервис в наше приложение ASP.Net, чтобы ESB может интегрироваться с ним?

Обычно все наоборот. Промежуточное программное обеспечение интеграции, такое как Mule, говорит на множестве протоколов только ради возможности подключения к существующим системам без их изменения.

Если да, что было бы хорошим подходом для выбора типа веб-сервиса (например, REST, WCF, SOAP, Servicestack), который будет совместим с Приложение ASP.Net и мул?

Если в вашем приложении действительно нет ранее существовавшего канала, который вы могли бы использовать для интеграции (даже не простая веб-форма HTTP POST? Действительно?), И вы хотите предоставить API, чтобы промежуточное ПО интеграции могло подключиться к нему, выберите архитектура / технология, соответствующая создаваемому вами стилю API (REST для API, ориентированного на ресурсы, SOAP для API, ориентированного на RPC).

...