Очередь Redis или потоки? - PullRequest
       13

Очередь Redis или потоки?

0 голосов
/ 27 апреля 2020

Я пытаюсь использовать Redis, но я немного запутался ... У нас есть сервер nodeJS и MongoDB, которые обрабатывают заказы, каждый заказ должен проверять API внешних провайдеров, чтобы узнать состояние этого последнего, может быть отложено, отменено или завершено. Этот процесс может занять некоторое время и должен выполняться в фоновом режиме.

Согласно Redis Bull

Задание можно добавлять в очередь и обрабатывать повторно. в соответствии со спецификацией cron

Я думал о решении, где я создаю заказ Redis ha sh, чтобы я мог получить все заказы по идентификатору ha sh. Пример: order: 1, order: 2 ... (срок действия ордера истекает через 60 минут).

Вероятно, я могу преобразовать JSON ордер в строку и добавить в очередь ордеров Redis. Проблема в том, что мне нужно получить все ордера с идентификатором за один раз (поскольку у нас истекает время, мы должны обрабатывать все одновременно) и отправить его в API запроса в зависимости от состояния каждого заказа, которое может быть обновлено быстрее, чем другие, поэтому очередь не может быть лучшей в этом сценарии.

Или что, если il oop весь мой заказ заказов ha sh: 1, order: 2 ... И я добавляю его в запрос (только если ожидающий ответ истина), когда ответ в порядке, я обновляю ha sh и могу добавить его в полную очередь. Используя потоки, когда заказ истекает, я могу уведомить MongoDB и отменить обновление до true.

Так что, как вы видите, я немного запутался в том, какую стратегию я могу принять ...

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