laravel-admin查询百万数据页面访问太慢怎么解决?

现在查询300万的数据,页面要加载1分钟左右,

如何不使用laravel-admin内置的搜索方法?我希望可以用自定义的查询数据方法,我需要怎么操作?

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 10
Epona

查询慢 基本上是SQL慢, 你需要先找到具体是哪里慢,然后针对去优化。 比如给数据库加索引等等。

2年前 评论
laravel_mouse (楼主) 2年前
laravel_mouse (楼主) 2年前
ncccc1 2年前
laravel_mouse (楼主) 2年前
mowangjuanzi 2年前
流浪剑客

开启慢查询日志,针对SQL语句去优化

2年前 评论

300 万 其实不算多,基本就是 sql 和索引的问题

2年前 评论

+1问题。当百万级数据量时,使用laravel的paginate时,select count(*) ... 非常慢,分页数据倒是很快,这个如何避免的,如果不返回到前端总数量,前端怎么分页呢?

2年前 评论
zhangrongwang 2年前
ncccc1 2年前
ncccc1 2年前
helloStar (作者) 2年前

这个问题是因为laravel admin的 grid 有个分页,每次都是去count,导致特别慢,目前没找到啥好方法,laravel是有个simplePaginate,只渲染单纯的上一页下一页,不去 count 统计,但是 laravel admin 没有实现

2年前 评论
lchola (作者) 2年前
laravel_mouse (楼主) 2年前

明明就是 程序设计问题 不能优化掉 select count () ,非要赖人家数据库设计不合理。不解决 select count () 怎么都是慢

2年前 评论

改为简单分页即可

2年前 评论

那个count慢吧

2年前 评论
laravel_mouse (楼主) 2年前
laravel_mouse (楼主) 2年前
Trance (作者) 2年前

dcat-admin 实现了simplePaginate分页,参考103.39.211.179:8080/admin/tables/si...

楼主可以看看能不能自己在laraveladmin中实现这个功能

2年前 评论

file

$filter->scope('today', '当日记录')->whereDate('created_at', _date_of_today());
$filter->scope('yesterday', '昨日记录')->whereDate('created_at', _date_of_yesterday());

我是这样做的:created_at 加索引,筛选添加当日和昨日的记录,菜单链接默认返回当天的数据,这样就好很多了。

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!