Tag: cron

用node.js编写任务… cron或setInterval?

也许这似乎是一个奇怪的问题,但我不知道如何编程一个任务… …而是,我不知道什么是最好的解决scheme。 我刚刚完成了一个Web应用程序,它需要每个星期一,每一个星期一,执行一个“特殊”的代码段,它不能从其他地方调用。 cron解决scheme看起来好多了,但是这段代码会被隔离,就像这段代码和其他应用程序是两个不同的程序一样。 和cron解决scheme的最坏的障碍(甚至强硬我suposse它可以解决),当我从cli 节点cron.js调用JavaScript文件它使它的工作,但它永远不会结束…这是正常的? 或者它取决于代码? 因为我不想执行一个实例,下一个星期,第一个实例仍在运行,运行第二个,每个周期都会遇到同样的问题。 “setInteval”解决scheme可以设置一天的时间,并testing是否是星期一(星期一做出动作),或者可能设置时间为一周(604800000毫秒)…此解决scheme没有这些问题,特别是最后一个,但是它消耗了大量的资源(我认为…不是?)。 什么是最好的解决scheme? 有什么不同? 如果cron是最好的…如何停止任务? (uuuuuhhhh也许是用cron -a shell编写的其他程序 – 一分钟后杀死节点任务… uuummm有点拙劣的工作)。 非常感谢你。

通过cron重新启动一个node.js应用程序forever.js?

我的node.js应用程序有时会崩溃,有时会永久崩溃.js会自动重新启动它,有时却不会。 日志中没有任何东西 – 我用'-e'选项永远运行,但是不能保存任何错误日志 – 我的主日志简单地中断了,就是这样… 厌倦了试图弄清楚,我想知道是否有另一种解决scheme:我可以设置一个cron,这将检查我的URL为503代码,如果是这样的话,它会重新启动应用程序永远使用? 我知道如何白色的bash脚本永远开始,但如何检查URL是否返回503代码? 谢谢!

debugging使用bash文件和nodejs执行的mysql查询

我试图创build一个cron作业插入数据到表中,但它不工作,我甚至找不到一个方法来正确debugging它。 这个想法是相当基本的:获取文件path,发布并执行script.sh文件。 该脚本遍历文件的内容并将其插入到数据库中。 HTMLinput部分非常简单: <form action="http://127.0.0.1:9080/config" method="post"> <input type="text" name="data" style="width: 500px;"> <input type="submit" id="button" value="config"></input> </form> 和server.js处理也是相当基本的(我离开cron实现,因为它正在工作,而不必为我的问题): app.post('/config', function (req, res) { var source = req.body.data; var script = ' /home/al/Downloads/DataMining/node.js/script.sh ' + source; //file not found -> full path of source file exec(script); addCronTab(script); //readFile – response file that read.. res.end(script); }); 我认为这个问题来自我的bash文件: […]

node-cron:每秒钟发出Cron tick

我正在使用node-cron来尝试在特定的时间运行一个函数。 该function应该在工作日的10:00开始。 import { CronJob } from 'cron' new CronJob('00 00 10 * * 1-5', function() { console.log('Fired'); }) 当我运行这个代码时,函数每秒触发一次,而不是在指定的时间触发一次。 我刚才提出了一个错误 ,但没有人回应。

我不能从这个RSSparsing器得到任何东西

我有一个SQL数据库与RSSurl。 我想用cron来每隔几个小时触发一次feed的请求(cron被设置为每分钟得到一个回报)。 当我得到一个回报,我想把这些到一个聚合网站的数据库。 这是我所能得到的。 我知道有东西看起来不能放在手指上。 cron.schedule('* * * * *', function () { router.get('/', function (req, res) { pool.connect() .then(function (client) { client.query( 'SELECT * FROM rss_url;') .then(function (result) { client.release(); result.forEach(function (rss) { parser.parseURL(rss, function (err, parsed) { console.log('parsed.feed ', parsed.feed); parsed.feed.entries.forEach(function (entry) { console.log('entry ', entry); client.query( 'INSERT INTO article (contentSnippet, guid, link, […]

caching来自Amazon Product Advertising API的数据

我一直在使用node.js来表示search使用亚马逊产品广告API,现在它作为一个Web API端点,以便我可以通过链接获取数据: my_host/amazon/{search_catgegory}/{keyword}/{page} 但是,亚马逊API有一个限制,每次只返回最多10个项目。 所以,我想将search结果caching在我自己的数据库中,然后可以在每个查询中返回50个项目。 我的想法是使用node-cron安排我的任务,以便在每个星期一午夜达到我想要的(例如,获得前10页的search结果)。 有两个问题:1)如何有效地得到我的结果,我是否简单地多次调用API如下? my_host/amazon/{search_catgegory}/{keyword}/1, my_host/amazon/{search_catgegory}/{keyword}/2, my_host/amazon/{search_catgegory}/{keyword}/3, … my_host/amazon/{search_catgegory}/{keyword}/10 还是应该将每个API查询包装到承诺中,然后使用promise.all()等来获取所需的所有数据? 2)我应该在同一个节点应用程序中使用Web API服务(即原始快速应用程序)和这个新的cron任务(即从亚马逊“预加载”数据)吗? 或者我应该在单独的应用程序?

当使用摩卡进行testing时,Node.js执行CronJob

所以,我有一些js代码,这是一个slackbot,应该简单地监听和parsing提供的date,然后启动一个CronJob按照提供的cron或date格式运行某个函数。 像这样的东西。 var CronJob = require ('cron').CronJob; … robot.respond(date, function (msg)) { if(!isValidDate(date)) msg.reply("not a valid date); var interval = isCronDate(date) ? date : new Date(date); msg.reply("Job about to be scheduled.") var schedule = new CronJob(interval, processDataOnDate(), function() { msg.reply("hello") }, true); } 我有一个testing这个代码的咖啡文件,我期望得到一些反馈,但是我不希望根据我在testing代码中提供的date来执行cron作业。 但是,这是。 这是正常的吗? 由于这是一个unit testing,摩卡强迫代码完成执行,还是我做错了什么? 我正在运行这个来执行我的unit testing。 mocha –compilers coffee:coffee-script/register 为了得到更多的信息,我把这个作为一个slackbot运行,所有这些都是以“say”和“reply”的forms完成的。 我的一个testing看起来像这样。 […]

cronjob使用pm2启动node.js(类似于永远)

我对cron相当陌生。 我不知道如何cronpathvariables。 当我开始我的过程使用ssh会话,我会写命令: NODE_ENV=test pm2 start /home/myuser/webapps/myapp/app.js / NODE_ENV=test pm2 start /home/myuser/webapps/myapp/app.js 这应该怎么写在crontab? 像这样的东西? @reboot NODE_ENV=test env PATH=$PATH:/home/myuser/bin pm2 start /home/myuser/webapps/myapp/app.js 我会很感激你的帮助。 谢谢!

node.js cron会影响系统性能吗?

我想在我的节点服务器中使用cron模块( 后来 , node-cron等)来调度作业。 如果在注册1小时后没有这样做,那么作业就是发送给用户的通知(例如,电子邮件)以更新他的个人资料图片。 我使用later模块在用户注册时安排任务,在1小时后执行,检查他是否上传了个人资料图片,如果没有,则发送通知。 我的问题是:1.是否有大量的预定作业会影响服务器性能? 2.在不影响系统性能的情况下安排大量工作的最佳方式是什么?

onComplete()不会在节点cron中调用

嗨,我试图testingnode-cron但我不能在一个案件得到所需的答复。 当前的cron完成后,我需要再次启动cron请求。 所以,我需要onComplete()来调用,但我无法获得callback。 我的代码片段是: CronWrapper.prototype.pushNotificationCron = function() { // change console to winston in real implementation. console.log('Creating job'); var jobPattern = '*/10 * * * * *'; var job = new CronJob(jobPattern, onJobStarted, onJobCompleted, false); console.log('Starting job'); job.start(); }; var onJobStarted = function(){ var date = new Date(); console.log('Cron started on \t' + date); return; […]