如何有效地显示Laravel中庞大数据集的报告和表格?

时间:2018-12-18 06:55:01

标签: laravel performance laravel-5 datatables laravel-5.4

我以前在网站上使用Datatables生成报告,该网站目前处理3至4个表,每个表约有3k至4k记录。客户端或服务器端的数据表,甚至服务在将记录呈现到DOM中时都工作得有点慢,而且单击分页的链接所花费的时间几乎与加载页面所花费的时间相同。因此,我转而使用默认情况下提供的laravel分页器,尽管它缺乏数据表提供的灵活性,但我在其上实现了自己的ajax搜索来实现同样的功能。我想了解开发人员还可以采用哪些其他方式以表格形式显示报告,这些表格可能包含过去4至5年的数据,并且页面速度很好。我实施了急切的加载,以提高工作的速度,但没有达到这个程度。

1 个答案:

答案 0 :(得分:2)

如果您在前端和后端都没有犯很大的错误(例如一次加载所有数据并将它们分页到DOM中),则主要问题通常是关于数据库设计和查询的。当然,服务器的功能(包括CPU,RAM等)非常重要。

  

3至4个表,大约记录3k至4k

此数据量确实很小,检查您的索引可能会解决问题。如果仍然很慢,请尝试使用Laravel提供的缓存系统之一。

当您访问数百万个数据时,您可以利用一些高级解决方案,例如数据库分片弹性搜索负载平衡 >,微服务 ...

这是一个巨大的主题,但是您可以从this topic开始。 并且不要忘记每种类型的数据库都有不同的功能和解决方案。

  

我实施了急切的加载以提高实际运行的速度,但没有达到这个程度。

您还可以将 Laravel急切加载查询构建器进行比较,以获取here的性能。