我有一个Web应用程序,必须在特定时间段内检查某些内容。它可以在每5分钟检查一次。但理想是几乎永远运行。
我要做的是连接到社交网络api,并更新我的数据库中的内容。第一种方法是设置cron jobs
。
但是我可以从命令行永远:
运行脚本while (true) {
// my code here
}
那么,哪一个对我的情况更好?第二个会影响apache的请求吗?任何想法都将不胜感激。
答案 0 :(得分:1)
如果您可以预测要执行的多个cron作业,您可以尝试使用https://github.com/lavary/crunz(或任何其他类似的库),您可以在PHP中配置作业调度程序。无论如何,我不会将PHP应用程序用作守护进程,每x分钟/小时运行它对我来说只是一种方式。如果这是不可接受的,那么选择不同的lang就是答案;)。
答案 1 :(得分:0)
使用for (let i = 0; i < accounts.length; i++) {
let query = {'email': accounts[i].email};
let accountHolderDoc = {
email: accounts[i].email,
name: {
first: accounts[i].accountHolderFName,
last: accounts[i].accountHolderLName,
},
};
promise = AccountHolder
.findOneAndUpdate(
query, {$set: accountHolderDoc}, {upsert: true, new: true})
.then(function(accountHolder) { ... })
.catch( ... );
...
}
。
第二个将立即调用任务&amp;无限地。此外,您还必须在浏览器中打开页面,或者必须向该页面发出HTTP请求。
答案 2 :(得分:-1)
是否可以通过AJAX
拨打5分钟电话?