Преимущество наличия нескольких веб-служб состоит в том, что у каждого из них может быть свой пул приложений (т. Е. Рабочий процесс) в IIS
. Таким образом, вы можете перерабатывать один пул приложений для одного веб-сервиса, не затрагивая другие.
Преимущество наличия единого веб-сервиса потенциально облегчает обслуживание, поскольку код находится в одном файле и т. Д. Конечно, если кода много, это может усложнить и обслуживание.
Итак, вопрос в том, каков правильный уровень детализации?
Вы можете разделить веб-сервисы по бизнес-функциям, и я обнаружил, что это хороший подход. Например, если у вас есть некоторые бизнес-методы, связанные с выставлением счетов, вы можете поместить их в веб-службу выставления счетов.
Если у вас есть другие методы работы с заказами на доставку, вы можете поместить их в веб-службу доставки.
На мой взгляд, это создает хороший раскол, а также позволяет использовать преимущества пула приложений, обсуждавшиеся ранее.
Пример
Вы можете увидеть реальный пример такого типа раскола с помощью FedEx . Обратите внимание, как они разделяют свои веб-сервисы по доставке, отслеживанию, видимости и т. Д.