@amenov
Full-stack developer

Как реализовать отложенные задачи в Node.js?

Всем привет!
У меня такая задача:
Человек выкладывает заявку на какое то время и в конце времени к примеру через 3 часа она должна автоматически вызвать определённый callback по времени и передать туда параметры. Это нужно для того чтобы я мог сделать автовыбор победителя.

Можете подсказать что лучше использовать? Также общий принцип как это сделать на Node.js.
В Laravel встроены очереди и поэтому там не было вопросов
  • Вопрос задан
  • 270 просмотров
Пригласить эксперта
Ответы на вопрос 2
@bqio
https://bqio.github.io/
Каждые N секунд проверять стек ваших заявок. Если системное время больше, чем время указанное в заявке, то вызывать коллбек с этой заявкой и удалять ее из стека, иначе ничего не делать.
Ответ написан
Комментировать
SagePtr
@SagePtr
Еда - это святое
Если на чистой NodeJS, то можно тупо вешать setTimeout. Но иметь ввиду, что при перезагрузке сервера задания не сохранятся, потому если важна сохранность - то класть копию куда-нибудь в БД или на диск, а при выполнении удалять оттуда или помечать как выполненные, при запуске сервера - возобновлять те, которые не были выполнены.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы