2016-11-22 5 views
3

Я провел целый день, пытаясь получить какой-то планировщик, работающий с моим Parse Server (работает на AWS Beanstalk Node.js) Я смог чтобы получить код внутри js-файла, но похоже, что он не работает. Есть ли способ настроить какой-то планировщик, поэтому мне не нужно вручную запускать мои задания через панель мониторинга?Parse Server - Как использовать планировщик для запуска «заданий» снова и снова

+0

Lotsa ЛИЭС будет делать .... https://github.com/scripting/nodeRunner или использовать хрон –

+0

Это будет работать с сервером ?? Разбор Я уже пробовал npm node-cron, и он сказал, что это сработает, но либо я просто не знал, что я делаю, либо код не запускался (ошибок не было) – D34thSt4lker

+0

psrvr - это процесс # 1. proC# 2 может быть запущен, например, для работы в других группах. –

ответ

1

(отказ от ответственности, я не раньше использовал Синтаксический анализ, но посмотрев в него, Анализировать, как представляется, в ведении nodejs и выразить, так это должно работать.)

узел-график является простым в настройке модуль для планирования заданий. Чтобы попробовать, запустите это в своей основной директории проекта с вашими node_modules и package.json.

npm install node-schedule --save 

добавить этот код в отдельный файл, например, «schedule.js» и требуют его в основной начальный файл, или поместить его непосредственно в главном запуска файла. На основе синтаксического анализа видео учебник скриншоты, которые я видел, этот файл может называться «index.js»:

var schedule = require('node-schedule'); 

// start a job running Monday through Friday at 2:15 PM 
var rule = new schedule.RecurrenceRule(); 
rule.dayOfWeek = [1,2,3,4,5]; 
rule.hour = 14; 
rule.minute = 15; 

var startJob = schedule.scheduleJob(rule, function() { 
    console.log('job started at ' + new Date()); 
}); 

Испытание его путем создания console.log запуска задания в минуту с момента, когда вы начинаете свой сервер и вы должны увидеть выходную работу, начатую в ... »вскоре после запуска.

После того, как он работает, отредактируйте строку console.log, чтобы вызвать функции, которые вы обычно вызываете через панель.

Редактировать массив дней недели, чтобы быть тем временем, в который вы хотите его запустить. 0 воскресенье, 6 суббота. Отредактируйте правило.hour и rule.minute при необходимости.

Вы можете запустить столько заданий, сколько хотите, указав правило и функцию для запуска, а затем передав правило и функцию schedule.scheduleJob, как показано выше.

+0

Спасибо, плохо попробуйте – D34thSt4lker

4
You have Configure the nodejs cron job for parse-server job schedule. 

1. install "CRON" module - npm install cron,(reference:https://www.npmjs.com/package/cron). 


2. Change the parse server job Schedule function declaration. 
     Parse.Cloud.job("jobScheduleName", function(){ }) 
      To 
     function jobScheduleName() { }; 

3.Run cron 
    var CronJob = require('cron').CronJob; //include dependency 
    //add this code to run job every 15 minute. 
    //set your time as per your run schedule. 
    new CronJob('0 */15 * * * *', function() { 
      Cron.jobScheduleName(); 
     }, null, true,"timeZone"); 
+0

. Я настроил все так же, как вы. но ничего не работает. за исключением того, что сервер, похоже, замедляется и ломается, когда у меня есть работа cron в Cloud Code. Есть идеи? – D34thSt4lker

+0

Пожалуйста, предоставьте более подробное описание и код, чтобы я мог понять. – IftekharDani

+0

Хорошо! Я получил это, чтобы работать! Я испортил функцию задания Cron. благодаря – D34thSt4lker

 Смежные вопросы

  • Нет связанных вопросов^_^