Уведомление потребителя веб-службы о том, что некоторые данные изменились? - PullRequest
1 голос
/ 06 апреля 2009

Что может быть более стандартным способом уведомления потребителя веб-службы об изменении данных?

  1. Потребитель периодически вызывает веб-сервис для извлечения уведомления об изменении.

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

  3. Другое

Ответы [ 3 ]

1 голос
/ 06 апреля 2009

Зависит от сценария. Если вы работаете в закрытой среде с несколькими потребителями вашего сервиса, вы можете переключиться на сервис в стиле COMET, который разрешает обратный вызов от сервиса к клиенту. Подробнее об этом здесь:

Википедия - COMET

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

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

1 голос
/ 06 апреля 2009

Оба эти варианта. Существует также нечто, называемое «кометой», которое похоже на создание потока между потребителем и производителем - сообщения могут затем передаваться между ними. Википедия, пожалуй, лучшее место, чтобы начать расследование, чтобы посмотреть, сработает ли это для вашего проекта: http://en.wikipedia.org/wiki/Comet_(programming)

0 голосов
/ 07 апреля 2009

Если вы не знали об этом, и если это помогает: WCF может работать с дуплексным контрактом, который фактически создает контракт на обслуживание обратного вызова на клиенте. Это довольно прозрачно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...