Forum OpenACS Development: Caching portal structure or content

Collapse
Posted by Peter Alberer on
Hi there,

we will start in a few weeks with our dotlrn based platform and i found that the personal portal page ("/dotlrn/") is still loading quite slowly. I think a lot of the queries that are running (portal structure, elements, maybe some parts of the content) could be cached. Has anyone already developed some caching infrastructure for the portal package? I would be glad to hear whether someone has made some experiences with portal caching and could share info or code with me.

TIA, peter

Collapse
Posted by Don Baccus on
Some of the structure is already cached.  I've been working on a major rewrite of the portal package, to integrate it equally well with OpenACS as well as .LRN, and much better caching is something I intend to look at.  But reintegration with .LRN and upgrade scripts probably won't come out until end of May, which involves some personal travel and the Heidelberg .LRN/OpenACS conference.

Portal content is another issue entirely.  It is really up to the application portlets to cache their own content, and most do not.  A portal page with a bunch of portlets on it can be slow because it is doing the same about of work as several application index pages.

Make sure you have permissions caching turned on, BTW.  This alone makes a big difference in .LRN performance.

Collapse
Posted by Peter Alberer on
hi don, thanks for the reply. i will probably start to implement a small caching solution myselves then. After a quick look at the queries of the portal page with the developer support page i found out that the queries "portal::render.portal_select", "portal::render.element_select" and "portal::evaluate_element.element_select" could probably cached as well till the user changes his/her portal configuration. I will start there and continue the work with caching element content afterwards.