Использование веб-службы часто является отличным архитектурным подходом. И с появлением WCF в .Net это становится еще лучше.
Но, по моему опыту, некоторые люди, похоже, думают, что веб-службы всегда должны использоваться на уровне доступа к данным для вызовов в базу данных. Я не думаю, что веб-службы являются универсальным решением.
Я думаю о небольших приложениях интрасети с несколькими десятками пользователей. Веб-приложение и его веб-служба развертываются на одном веб-сервере, а не на веб-ферме. В будущем не будет другого веб-приложения, которое может использовать этот конкретный веб-сервис. Мне кажется, что стоимость вызова веб-сервиса неоправданно увеличивает нагрузку на веб-сервер. Для межпроцессных вызовов есть производительность. Сохранение и отладка кода для веб-приложения и веб-службы сложнее. Так что это развертывание. Я просто не вижу преимуществ использования веб-службы здесь.
Можно проверить это, создав две версии веб-приложения, с веб-службой и без нее, и выполняйте стресс-тестирование, но я этого не сделал.
Есть ли у вас мнение об использовании веб-сервисов для небольших веб-приложений? Любые другие случаи, когда веб-сервисы не являются хорошим архитектурным выбором?