10月 19th, 2007的文章列表
Zend Framework Table–鸡肋?
2条留言 越来越感觉Zend Framework Table是个鸡肋了,用起来麻烦不说,效率也不见得有多高。特别是在多表联合查询或者是复杂SQL查询的时候,那个写法之痛苦啊。还有就是它的findDependentRowset,findParentRow,findManyToManyRowset又非得让你有现成的查询结果集合才能用,而且速度低的要命。我现在的这个项目做出来后效率低的要死,半天网页都打不开。想了半天都不知道问题出在哪,说是网速吧,其它网站唰的一下就打开了,Apache也没有问题,实在不行了把Xdebug打开再用WinCacheGrind一看,我的乖乖,好吓人哦,程序运行时间花了1600多毫秒,再加上页面是美工用Table赶出来的,Table套Table,一层套一层,头都看大了,速度不慢才怪呢。
继续研究才发现全是findDependentRowset,findParentRow,findManyToManyRowset惹的祸,一大半的时间费在了它们的上面,悲哀啊~~~
于是我想换成$db->query($sql)->fetchAll();来查询看看,好家伙,太牛了,奶牛!蒙牛!在替换了一大半之后,运行时间降到了300多毫秒,这也太夸张了吧!下来得好好查查,求证一下到底是我程序哪里有问题还是真的是Zend的问题,如果真是Zend的问题,那估计以后都不要用它的那些个鸡肋了,还是自己写SQL实在啊!
PHP&MySQL