Запуск будущего события на основе текущего события - PullRequest
1 голос
/ 02 июля 2010

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

Например:

  • событие А происходит. мне нужно, чтобы событие B произошло днем ​​позже (не критично ко времени)
  • система сохраняет запись события в дБ
  • текущий процесс просматривает базу данных, выполняет готовое событие B и удаляет их из базы данных

Имеет ли это смысл? Я использую Ruby на рельсах - я думаю, что это довольно распространенный случай использования

Ответы [ 2 ]

2 голосов
/ 02 июля 2010

Используйте драгоценный камень DelayedJob . Обратитесь к этому скринингу для получения более подробной информации.

1 голос
/ 02 июля 2010

Да, это имеет смысл :).Вероятно, вы должны смотреть на планировщик или процесс, который выполняется в фоновом режиме.Взгляните здесь и здесь

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

...