Оффлайн обработка POST-запроса - PullRequest
2 голосов
/ 15 сентября 2010

Я разрабатываю приложение, в котором отправляю POST-запросы в веб-службу .NET.

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

Какие стратегии позволяют решить задачу

Должен ли я реализоватьСлужба Windows или запланированная задача, которая вызывает приложение для выполнения требуемой задачи.

Ответы [ 2 ]

4 голосов
/ 15 сентября 2010

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

Вот хороший обзор MSMQ:

http://www.primaryobjects.com/CMS/Article77.aspx

2 голосов
/ 15 сентября 2010

Если у вас так много данных, что они не могут быть обработаны в режиме реального времени, я бы, вероятно, настроил службу для выполнения следующих действий:

ProcessRecordViaPost

  1. Создание новой записи в базе данных «Очередь» с уникальным идентификатором и всей остальной информацией, подлежащей обработке
  2. Немедленно вернуть уникальный идентификатор клиенту

ReadRecordViaGet

  1. Проверить очередь, обработаны ли возвращаемые данные, если нет, вернуть код состояния (количество элементов в очереди до него?)

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

...