如何解决zend framework 2.3下大量数据查询慢的问题?

分类:PHP | 作者:凹凸曼 | 发表于2014/10/27

最近研发系统中使用zend framework 2.3框架, 表的数据量达到几十W的时候,分页组件Paginator 查询数据非常慢,几十W的数据查询对于MYSQL 来说不应该非常慢,并且分页配置按照官网方法配置的。
问题一、Paginator构造sql的性能问题

sql结构如下:

[queryString] => SELECT 字段 FROM `表名` ORDER BY `id` DESC LIMIT :limit OFFSET :offset

explain 运行一下 ,type :all 确实不太好

更改建议一:用id进行范围查询可以提高性能

问题二、每条记录都是封装成对象,对象比原来的数组,我觉得性能上还差一大截

更改建议二:改为数组存放

问题三、mysql 配置文件缓存配置

我的是本机,不是服务器测试所以 木有管这个,官网应该有介绍,还有一些博客也有介绍,这里就不研究了

对于我的系统,分表之后,记录每天达到一百万级数据量,所以mysql性能需要考虑的

 

本文出自 “凹凸曼” 博客,请务必保留此出处 http://www.apoyl.com/?p=1827

日志信息 »

该日志于2014-10-27 10:01由 凹凸曼 发表在PHP分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

目前盖楼 (0)层:

发表评论 »

« »