Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 处理大规模cron作业_Php_Cron - Fatal编程技术网

Php 处理大规模cron作业

Php 处理大规模cron作业,php,cron,Php,Cron,我有一个网站,用户创建自己的任务,在特定时间运行 此时,当用户单击createtask时,它将添加到数据库表tasks中 然后我有一个cron作业,每15分钟运行一次。它获取表中的所有条目,并首先使用日期时间检查是否已在今天运行。(每到午夜,另一个cron运行并重置所有这些值)。如果它今天没有运行,它将运行它,然后将值更改为ran cron作业通过在我的服务器上运行php文件来检查任务,然后使用一个简单的foreach语句来实现这一点 目前,只有11个用户,我的服务器看起来还不错。我想知道100

我有一个网站,用户创建自己的任务,在特定时间运行

此时,当用户单击createtask时,它将添加到数据库表tasks中

然后我有一个cron作业,每15分钟运行一次。它获取表中的所有条目,并首先使用日期时间检查是否已在今天运行。(每到午夜,另一个cron运行并重置所有这些值)。如果它今天没有运行,它将运行它,然后将值更改为ran

cron作业通过在我的服务器上运行php文件来检查任务,然后使用一个简单的foreach语句来实现这一点

目前,只有11个用户,我的服务器看起来还不错。我想知道10000个用户会发生什么


这是处理数千个cron作业的有效方法吗?您将如何运行此程序?

我将在AWS Lambda上运行它。当任务需要转到内存分配较低的Lambda函数时,发送任务并以这种方式运行。您可以使用请求库调用需要调用的URL。Lambda几乎可以无限扩展。默认情况下,它们允许您处理100个并发请求。我不明白您为什么需要“运行”值或重置(但单独的日志记录表不是一个坏主意),您可以通过查询检查前15分钟内要运行的每个任务。也许您应该模拟这种情况?看看CRON如何计算大量的表达式是很有趣的。