因此,我已经在主机上部署和运行使用Cron的cron脚本,并索引数据库表中的所有记录 - 索引稍后将用于网站的前端以及支持的操作。如何使用Zend_Lucene和Zend_Paginator优化大量数据库记录的索引
操作后,索引约为3-4 MB。
问题是需要大量资源(CPU:30+以及大量内存)并降低了机器速度。我的问题是关于如何优化如下操作:
首先有一个使用Zend Framework API构建的选择查询,然后将此查询传递给Paginator工厂,该工厂返回一个paginator,我用它来平衡当前被索引的项目数量并且不会迭代太多项目。 脚本使用foreach循环遍历paginator对象中的当前项目,直到达到结尾,然后在获取下一页的项目之后从头开始。
我怀疑这种开销是由Zend_Lucene引起的,但不知道如何改进。
他们在线资源中提到了很多次,他们提到索引是在PHP中变慢的一种方式,它可以更好地使用Java来完成 - 即。使用Java Lucene来(重新)构建索引,只使用PHP和Zend_Lucene作为前端。顺便一些阅读材料:http://dadabase.de/weblog/archives/2009/07/22/recommendation-dont-use-zend-php-lucene – wimvds 2010-04-23 14:05:29