Рубрики
Uncategorized

Краткое описание структуры очереди с задержкой для небольшой электронной коммерции

Автор оригинала: David Wong.

Очередь задержки На основе реализации Redis

Сценарий применения

  • Неоплаченные заказы регулярно отменяются
  • Определение статуса возврата третьей стороной заказов на возврат средств
  • Обратный вызов для Оплаты баланса (Уведомление+n)
  • Автоматическая оценка заказов через 15 дней
  • ……

Разработка и внедрение

Традиционная реализация

  • Использование redis функции для оптимизации традиционного подметания столов

цель проектирования

  • Надежность: Отложенная очередь гарантирует потребление один раз

Структура системы и точки реализации

  • задание(json{uuid,job_id,job_name,job_data})

    • Закрытие неоплаченных заказов
    • Определение статуса возврата третьей стороной
    • Обратный вызов Для Оплаты Баланса
  • Очередь задержки (redis zset)

    1. Структура: оценка: метка времени истечения срока действия; значение: job_id
    2. Опрос задержанных очередей, которые будут распределены по различным очередям сообщений

      1. значение(ключ, 0,now_time,,)
      2. Если значение равно нулю, режим сна (1)
      3. Если значение не пустое, выньте значение, результат= zrem (ключ, значение)

        1. Если результат верен, то очереди, связанные с нажатием
  • Очередь сообщений о выполнении (список reid есть)

    • Закрытие неоплаченных заказов
    • Определение статуса возврата третьей стороной
    • Обратный вызов Для Оплаты Баланса