Основной вопрос для нескольких клиентов веб-службы

#service

#Обслуживание

Вопрос:

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

Веб-сервис выполняется на веб-сервере. Сервис предоставляет различные методы. Несколько клиентов могут вызывать один и тот же метод обслуживания одновременно. Вопрос: Получает ли каждый клиент свою собственную копию метода или код в реализации метода должен запускать поток для каждого клиента и обрабатывать запрос каждого клиента в своем собственном потоке? Чего я не понимаю?

Заранее спасибо.

  • DP

Комментарии:

1. Я думаю, что это вопрос, связанный с конкретным языком программирования. Можете ли вы сказать нам, какие языки программирования вы рассматриваете?

Ответ №1:

Это зависит от конфигурации. В WCF вы можете настроить ‘singleton’ ie. один экземпляр сервиса, который будет работать со всеми клиентами. Или вы можете задать другое значение, которое создаст отдельный экземпляр для каждого клиента, вызывающего его. Вы определенно получите больше в MSDN.

Редактировать:

Проверьте этот атрибут: InstanceContextBehavior

Комментарии:

1. Спасибо. Это был указатель, который я искал. Итак, с помощью Singleton вы выполняете всю обработку нескольких клиентов самостоятельно в методе веб-службы. В режиме для каждого вызова (и, возможно, для каждого сеанса) существует отдельный экземпляр сервиса для каждого клиента. Я предполагаю, что синглтон будет наиболее эффективным с наименьшими накладными расходами, а остальные будут проще в кодировании и менее эффективны. Я думаю, что наилучший способ зависит от ожидаемого использования.