ZF-12388: Zend_Navigation is consuming too much time on render
Description
I have created apc cache for Zend_Navigation instance. I have got massive performance improvement on container init.
But still there is a problem on rendering helper.
findActive function of Zend_View_Helper_Navigation_HelperAbstract class is consuming too much time on render.
I think findActive function may use to indexing or caching adapter for following calls.
Comments
Posted by Tuğrul Topuz (tugrul) on 2012-08-26T14:25:45.000+0000
You can see my cachegrind.out
https://dl.dropbox.com/s/m2o8t677209vhzx/…
Posted by Frank Brückner (frosch) on 2013-02-07T14:25:12.000+0000
Hi Tuğrul, at this point a caching adapter for Zend_Navigation (ZF1) is not an option.
If you can you give a proposal for implementation, then we can reopen this issue.
Posted by Tuğrul Topuz (tugrul) on 2013-02-09T22:34:25.000+0000
Maybe can pick active node and keep aside on navigation build.
I abandoned ZF1 and look at ZF2. I don't like ZF2 because there is a unnecessary confusion on ZF2.
I'm using Phalcon framework currently and building my own navigation component based on mongodb. I think dbms is very easy and fast way find active node with query and climb up throught parents using dbref.
Posted by Frank Brückner (frosch) on 2013-02-10T10:03:20.000+0000
{quote}Maybe can pick active node and keep aside on navigation build.{quote} Give me an example how would you do it. {quote}I don't like ZF2 because there is a unnecessary confusion on ZF2.{quote} Confusion? It is new and makes many things diffent, but ZF2 is much more flexible and better structured. The module structur in ZF2 is very nice! Some practice and maybe a complete project and you will no longer have any big problems. {quote} I think dbms is very easy and fast way find active node with query and climb up throught parents using dbref.{quote} A db-adapter is not a option for Zend_Navigation in ZF1.
If you can offer a good solution, then I will write a patch and unit tests. But we can't rewrite the whole component.