Imported From: http://groups.google.com/group/in-portal-dev/browse_thread/thread/818b4b3d9c4be91a#
We currently have 2 caching modes: -
- cache page completely (only makes sense for static page - when all
...
- visitors see the same content)
...
- cache template parts via <inp2:m_Cache ...> cacheable content here
...
- </inp2:m_Cache> tag
I've recently talked to Slava and he suggested another caching approach: -
- cache all but specific page parts, e.g. located in <inp2:m_NotCache
...
- ...>...</inp2:m_NotCache> tags
This will work this way: -
- cold start (when page not cached):
...
- parse all <inp2: tags in requested template, but don't parse tags in
...
- <inp2:m_NotCache ...> tags
...
- store resulted HTML (with some non-parsed tags in it) in memory
...
- read cached page from memory
...
- parse tags, skipped during page caching process
...
- show page
...
- normal start (when we have cache):
...
- read cached page from memory
...
- parse tags, skipped during page caching process
...
- show page
When page mostly consists of static parts, then selecting non-static parts
will be more efficient (less tags required), then marking all cacheable
parts. Also it's easier to read one large part from cache, rather then than a lot
of small parts.
For example cache all page, but mark areas, where banners are displayed as
non-cacheable.
Of course <inp2:m_NotCache tag will only make sencesense, when page is selected
to be fully cache (in "Structure & Data" in admin console).
--
Best Regards,