首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Zend View渲染在大数据集时速度较慢

Zend View渲染在大数据集时速度较慢
EN

Stack Overflow用户
提问于 2012-09-09 05:43:30
回答 2查看 542关注 0票数 2

Zend视图通常是即时渲染的,但是对于一个大型的数据集,将1500个对象放到一个xml视图中,需要2-3秒,这对我的应用来说是不可接受的。任何建议都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-09 07:09:04

执行时间取决于实际的脚本,它的持久层,从web到数据库服务器的连接等方面。因此:

首先,以这样一种方式对应用程序进行检测,即计算服务器端脚本所花费的时间。

例如,将index.php重命名为realIndex.php并创建一个新的index.php,如下所示:

代码语言:javascript
运行
复制
$startTime = microtime(TRUE);

require_once( dirname( __FILE__ ) . '/realIndex.php' );

$endTime = microtime(TRUE);

echo '<hr />Time taken: ' . ( $endTime - $startTime ) . ' micros';

当然,这种方法是微不足道的,在任何情况下都不起作用。然而,这是一个起点。

尝试返回较少的数据

通常,大量的数据项-无论是否为XML -表示糟糕的UX和技术设计

因此,我建议在服务器端处理尽可能多的数据,然后向客户端返回一个压缩数据集。不要忘记:当涉及到检索和处理数据时,您的数据库系统或多或少总是比您的脚本快。

由于用户实际上无法在心理上理解1500个项目的网页中的所有数据,因此我建议使用页面的结果视图的数据。检索1/10的大数据集,并提供导航控件以转到上一页或下一页。

请注意,如果数据库定义良好,这不仅有助于用户,还可以减少数据库需要扫描和检索的数据量。例如,索引要搜索的属性,并尝试将记录保存在固定大小的表中,等等。

票数 3
EN

Stack Overflow用户

发布于 2012-09-10 00:24:41

三件事:

  1. 忘了分析吧。您已经确定它很慢,这并不奇怪- 1,500组数据是一个很大的数据!
  2. 添加分页!确定每页的最大项目数(限制),然后添加分页控件。
  3. 会研究缓存解决方案,例如memcache -尤其是在数据更新不是很频繁的情况下。

看起来这些项目中的一些已经在另一个答案中解决了。一定意味着我们在做一些事情:-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12334740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档