在php

时间:2017-09-23 09:55:34

标签: php

我有一个Web应用程序,必须在特定时间段内检查某些内容。它可以在每5分钟检查一次。但理想是几乎永远运行。

我要做的是连接到社交网络api,并更新我的数据库中的内容。第一种方法是设置cron jobs

但是我可以从命令行永远

运行脚本
while (true) {
    // my code here
}

那么,哪一个对我的情况更好?第二个会影响apache的请求吗?任何想法都将不胜感激。

3 个答案:

答案 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分钟电话?