在laravel中更快地导出大数据以避免超时

时间:2019-03-29 18:00:26

标签: laravel vue.js laravel-excel

我要从数据库中生成包含1000条记录的报告。该报告将按月生成,有时用户可能希望获得一个跨度为3个月的报告。根据当前记录,一个月的数据集可以达到5000个。

我当前正在使用vue-excel对其进行laravel api的api调用,并且api返回现在由vue-excel导出的资源。该资源不仅返回模型数据,而且还需要获取相关的数据集。

对于较小的数据集,此方法可以正常工作,即当我获取3000条记录时,但对于大于此值的任何内容,服务器都将超时。

我还尝试使用laravel excel来解决查询问题的实际时间,并且两者都花了相同的时间,因为laravel excel也正在映射以获取关系。

所以基本上,我的问题是:有没有更好的方法来做到这一点,以便更快地获取数据并避免超时

1 个答案:

答案 0 :(得分:0)

只需将其放在函数的开头

    ini_set(max_execution_time, 84000); //84000 is in seconds

这将覆盖laravel inbuild脚本运行时的最大值。