Наши веб-сервисы построены вокруг функциональных областей. Иногда это только для одной сущности, иногда это нечто большее.
Например, если у вас есть CRM, одна из ваших веб-служб может вращаться вокруг управления контактами. Создание, обновление, поиск и т. Д. Если вы выполняете какой-либо тип обработки пакета, может существовать веб-служба для создания и отправки задания.
Что касается передового опыта, имейте в виду, что веб-службы увеличивают накладные расходы на обработку. Главным образом при сериализации / десериализации данных, когда они проходят по проводам. Из-за этого главным преимуществом является исключительно масштабируемость. Это означает, что вы тратите увеличенное время обработки транзакции на возможность запуска службы на нескольких компьютерах.
Основными компонентами, которые необходимо вывести в веб-службу, являются те области, которые являются общими для нескольких приложений, или которые вы намерены предоставить публично, или которые выиграли бы от большей балансировки нагрузки.
Конечно, вам нужно проанализировать ваше приложение, чтобы увидеть, где на самом деле существуют узкие места. В некоторых случаях это не имеет смысла. Например, если у вас есть одно приложение, которое не разделяет свой код и / или узкое место в основном связано с базой данных.