Опрос лазурной очереди и обновление представления при поступлении данных в очередь Asp.net Mvc4

У меня есть сценарий, когда запрос отправляется в службу через моего клиента, теперь ответ поступает в очередь сообщений в Azure. Как я могу опросить очередь на стороне клиента и обновить представление, когда придет ответ, скажем, мне нужно обновить метку при получении данных в очереди.


person Kayani    schedule 27.11.2014    source источник


Ответы (1)


В Azure есть два типа очередей: Azure Queue. и Очередь служебной шины. Хотя теоретически вы можете получить к ним доступ со стороны клиента (я предполагаю, что это JavaScript), потому что CORS был представлен некоторое время назад (не уверен в поддержке CORS для ServiceBusQueue), возможно, это не тот лучший вариант.

Проблемы, с которыми вы можете столкнуться:

  • Многие клиенты пытаются обрабатывать сообщения (блокировка и освобождение), очередь Azure не поддерживает сеансы, поэтому вам придется либо создавать очередь для каждого клиента, либо использовать очередь служебной шины (как я уже говорил ранее, не уверен в CORS) с сеансами.
  • Что должно произойти, когда ваш клиент больше не в сети? Сообщение остается в очереди? До когда? Срок действия?

Другой подход

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

Масштабирование SignalR с помощью служебной шины Azure

Использование SignalR с хранилищем таблиц Azure — какая архитектура?

person b2zw2a    schedule 27.11.2014