采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
MySQL 查询结果集过大,而网络速度又很慢,反馈到前端的加载速度就非常慢,这种情况下,怎么处理合适。
通常的做法是分多次查询,将大查询变成小查询。
但是你还要考虑一个问题:为什么前端一次需要这么多的数据?从用户交互的角度来说,一次性给前端太多数据是不太好的,在同一个界面里通常不会显示太多数据,所以可以尝试改进一下界面设计和产品设计,比如将大列表改为分页显示,这样查询太慢的问题也就解决了。
老师,我目前所在的项目就面临这样的问题。如果说分页查询后端需要对数据进行排序。几十万数据排序消耗时间并不比一次性查询来的更快,而且很耗内存。
1.参考一下5-9节的内容,看看能不能改善。 2.如果是用固定的几个字段排序的话,建议给这几个字段加个索引,尽量走索引覆盖,可以改善很多。 3.如果不是固定字段,而是多个字段计算出来的顺序,建议加一列,存放多个字段的计算结果,并加索引。
登录后可查看更多问答,登录/注册
从数据库原理到高性能实战,一次性涵盖
771 16
782 8
895 7
1.2k 6
747 6