Как обновить интервалы cron во время выполнения? - PullRequest
0 голосов
/ 24 июня 2019

В настоящее время я работаю над веб-приложением, которому необходимо импортировать некоторые данные из сторонних API, и оно делает это с помощью заданий cron, которые выполняются через регулярные промежутки времени (каждый час, один раз в день и т. Д.: Вы получаете идея), используя модуль npm "node-cron". Мне нужно реализовать способ установки интервала, с которым эти задания cron запускаются из внешнего интерфейса (в основном со стороны администратора приложения). Я уже проделал всю очевидную и тривиальную работу по созданию форм и вводу данных через формы для обновления выделенных полей в базе данных, где хранятся интервалы, но я не имею понятия о том, как динамически обновлять выражение задания cron из поля в моей базе данных.

Очевидно, что мне нужно прочитать данные из базы данных и сохранить их в переменной, а затем интерполировать интервал внутри выражения задания cron, например: var interval1 = 4; [ .. ] cron.schedule( `0 ${ interval1 } * * *` , () => [ .. ]` ), но я не знаю, как поступить. Я предполагаю, что мне придется написать что-то вроде другого задания cron, которое считывает обновленные данные из базы данных, затем обновляет указанные переменные и последовательно обновляет выражение, используемое для определения времени других cron. Но я на самом деле невежественный рН.

...