Cron имеет долгую историю в области вычислений и имеет множество ужасающих и удивительных историй.

В этом руководстве будет показано, как создать простое приложение Node с использованием сервера Express для выполнения вашей задачи cron. Он обладает огромным потенциалом автоматизации, и как только вы освоите cron, вы сможете делать много вещей, например, автоматизировать публикации в социальных сетях! 😃

Приступим ... запустите свой любимый редактор кода! Мы начнем, как и все великие истории, с самого начала.

В вашем терминале используйте следующие команды, чтобы начать:

$ mkdir cronapp
$ cd cronapp
$ npm init -y
$ npx gitignore node
$ touch app.js
$ npm i express cron --save
$ npm i -D nodemon --save

Эти команды создадут каталог и создадут файлы, необходимые для начала работы. Затем давайте добавим пару сценариев к package.json для запуска сервера.

"scripts": {
    "start": "node app.js",
    "server": "nodemon app.js"
}

Добавленные сценарии будут запускать nodemonserver, который следит за изменениями файлов и затем перезапускает сервер. В app.jstype или вставьте следующее:

Вы можете проверить правильность работы вашего сервера, набрав npm run server в терминале. Вы увидите журнал консоли, в котором указано, что сервер работает на порту 8585.

Затем создайте каталог utils, набрав mkdir utils, а затем создайте новый файл, набрав touch utils/index.js. В index.js вы создадите задание cron, введя или вставив следующее:

Это задание будет выполняться cron в зависимости от выбранного нами интервала времени. Об использовании cron можно прочитать здесь! Теперь давайте добавим cronScheduler.

Узнать больше о времени или * линии (23) можно в crontab. Проще говоря, начиная слева, 0 - это секунды, следующие этому шаблону.

  • Секунды: 0–59 (крайнее левое положение)
  • Минуты: 0–59 (в этом поле ставим 1 мин)
  • Часы работы: 0–23
  • День месяца: 1–31
  • Месяцы: 0–11 (январь-декабрь)
  • День недели: 0–6 (вс-сб)

Затем нам нужно добавить еще 2 строки кода в app.js, импортировать или потребовать cronScheduler, а затем вызвать его.

Наконец, вы готовы запустить новое приложение cron power… в терминале, если вы еще этого не сделали, введите npm run server. Через минуту вы должны увидеть console.log, который каждую минуту печатает новую строку.

Printing console.log Sat, 01 Aug 2020 00:24:00 GMT

В этом простом уроке вы узнали, как создать приложение cron power на NodeJS, используя ExpressJS для упрощения вашего сервера. Замените функцию consoleJob на все, что вы хотите запланировать, и получайте удовольствие!