2009/5/29 Mary Nicole Hicks <[email protected]>

>
> vince. wrote:
>
> > What's the problem with retrieving the entries from the DB, Assigning
> them
> > into a multi dimensional array and passing it into the zend_nagivation?
>
> The problem is that I can not do this for every navigable page on the site
> all at once... for every request.
>
> 1. Memory due to lots of items.
> 2. Speed - there comes a point when an array is so large that it is not as
> fast as an indexed mysql database table.
> 3. Cache will get out of date quickly.


I've hit the same problem as you. The Zend_Navigation helpers seem to work
perfectly, but they rely on being given a data structure containing the tree
of the whole site, which just isn't scalable.

It would be useful to have some input from the author(s) of the component to
see if there are any workarounds, or to see if this problem was forseen.

Technically the breadcrumbs helper only needs the current page and its
parents, so my only idea is if the Zend_Navigation data structure could be
cached in a tree like form matching the URL structure, some clever caching
mechanism could just include the bits it needs. But this would be tricky to
implement.

-- 
Tim Fountain
http://tfountain.co.uk/

Reply via email to