Zend视图通常是即时渲染的,但是对于一个大型的数据集,将1500个对象放到一个xml视图中,需要2-3秒,这对我的应用来说是不可接受的。任何建议都将不胜感激。
发布于 2012-09-09 07:09:04
执行时间取决于实际的脚本,它的持久层,从web到数据库服务器的连接等方面。因此:
首先,以这样一种方式对应用程序进行检测,即计算服务器端脚本所花费的时间。
例如,将index.php重命名为realIndex.php并创建一个新的index.php,如下所示:
$startTime = microtime(TRUE);
require_once( dirname( __FILE__ ) . '/realIndex.php' );
$endTime = microtime(TRUE);
echo '<hr />Time taken: ' . ( $endTime - $startTime ) . ' micros';当然,这种方法是微不足道的,在任何情况下都不起作用。然而,这是一个起点。
尝试返回较少的数据
通常,大量的数据项-无论是否为XML -表示糟糕的UX和技术设计
因此,我建议在服务器端处理尽可能多的数据,然后向客户端返回一个压缩数据集。不要忘记:当涉及到检索和处理数据时,您的数据库系统或多或少总是比您的脚本快。
由于用户实际上无法在心理上理解1500个项目的网页中的所有数据,因此我建议使用页面的结果视图的数据。检索1/10的大数据集,并提供导航控件以转到上一页或下一页。
请注意,如果数据库定义良好,这不仅有助于用户,还可以减少数据库需要扫描和检索的数据量。例如,索引要搜索的属性,并尝试将记录保存在固定大小的表中,等等。
https://stackoverflow.com/questions/12334740
复制相似问题