Веб-сервис или веб-сервисы - PullRequest
2 голосов
/ 25 октября 2010

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

1 - Создайте и установите одну веб-службу на многоядерном сервере для взаимодействия всех клиентских приложений.

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

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

Спасибо

Patrick

1 Ответ

1 голос
/ 25 октября 2010

Преимущество наличия нескольких веб-служб состоит в том, что у каждого из них может быть свой пул приложений (т. Е. Рабочий процесс) в IIS. Таким образом, вы можете перерабатывать один пул приложений для одного веб-сервиса, не затрагивая другие.

Преимущество наличия единого веб-сервиса потенциально облегчает обслуживание, поскольку код находится в одном файле и т. Д. Конечно, если кода много, это может усложнить и обслуживание.

Итак, вопрос в том, каков правильный уровень детализации?

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

Если у вас есть другие методы работы с заказами на доставку, вы можете поместить их в веб-службу доставки.

На мой взгляд, это создает хороший раскол, а также позволяет использовать преимущества пула приложений, обсуждавшиеся ранее.

Пример Вы можете увидеть реальный пример такого типа раскола с помощью FedEx . Обратите внимание, как они разделяют свои веб-сервисы по доставке, отслеживанию, видимости и т. Д.

...