Разве WebService может работать параллельно или только по столбцам? - PullRequest
0 голосов
/ 24 мая 2009

Выполнены ли вызовы к веб-сервису от нескольких клиентов параллельно или один за другим (т.е. будет ли рассматриваться второй вызов только после завершения первого вызова)?

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

Ответы [ 3 ]

1 голос
/ 24 мая 2009

Звонки на веб-сервисы - это, по сути, звонки на веб-страницы на сервере. Сервер обычно поддерживает пул потоков, из которого он извлекает потоки для обслуживания входящих вызовов. Таким образом, если несколько компьютеров вызывают один и тот же метод веб-службы одновременно, они будут выполняться параллельно, если в пуле потоков есть потоки. Если все потоки уже заняты, вызовы методов начнут переводиться в режим удержания (и сервер может даже сообщить, что он слишком занят для обработки запроса). 5 компьютеров не должны создавать проблем.

0 голосов
/ 24 мая 2009

Почти все фреймворки веб-сервисов поддерживают -синхронность. если вы используете C #, вы можете получить выгоду из следующей статьи:

http://www.codeguru.com/csharp/csharp/cs_webservices/security/article.php/c9179

0 голосов
/ 24 мая 2009

Веб-сервис может ответить на запрос. Итак, вам нужно иметь функцию, которую все 5 компьютеров вызывают для отправки необходимых вам данных с каждой машины. Затем создайте функцию, которую каждый компьютер вызывает, чтобы проверить, готов ли ответ. После сбора данных с каждого компьютера веб-служба ответит правильными данными.

Ответы веб-служб должны инициироваться клиентом, а не сервером.

Например,

  1. SubmitData(data) возвращает bool -> каждый компьютер отправляет данные, возвращает в случае успеха или нет. Сервер хранит ответы в БД.
  2. GetResponse() возвращает данные или FALSE -> Сервер проверяет, все ли 5 ​​компьютеров ответили. Если нет, верните FALSE. Если true, обработайте и верните данные.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...