Делайте вещи после ответа на ходатайство HTML - PullRequest
0 голосов
/ 06 декабря 2011

Вот схема моего вопроса:

Структура:

Client      ServerA      ServerB

Сервер A и сервер B предлагают веб-службу REST (php и mysql). И то, что я ищу, это:

Client  (queries)-------> ServerA
   |                         |
   |                         |
   |                         V
   | <------------(response)-*-(queries) -----> Server B
//Client's petition          |                      |
 is finished                 |                      |
                             v                      v
                    markAsSent(petition)<------------
              //if the petition fails, retry periodically

Сервер B хранит только статистические данные и не нужен для ответа клиенту, поэтому я хочу, чтобы клиент не ждал задержки петиции ServerA-ServerB.

Как я могу это сделать? Спасибо

1 Ответ

1 голос
/ 06 декабря 2011

Введите ответ в таблицу очередей в базе данных и сразу же вернитесь к пользователю. Затем сервер B асинхронно опрашивает очередь (захватывает строку) и выполняет любую статистическую обработку, которая вам нужна.

Скорее всего, вы просто заставите сервер B запустить задание cron, которое запускает скрипт, который извлекает и удаляет строку из очереди и обрабатывает ее.

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