[Zope-PAS] RFC: PAS caching
Jens Vagelpohl
jens at dataflake.org
Fri Oct 8 05:40:55 EDT 2004
Hi guys,
I'm going to work on caching for PAS and have thought about a couple
different architectural models to do so. I've come to a model I
personally like and wouldn't mind some comments.
Basically, I am proposing an architecture that works a little bit like
ZCacheable in that you instantiate cache managers and associate objects
(in this case plugins) with them. Obviously there are only a few plugin
types where it makes sense to cache anything. Since the "cacheable"
plugins have varying interfaces there would be specific cache manager
objects for each of them, and only the appropriate plugin can be
associated with them.
The plugins would cache based on keys that reflect the arguments to the
given method that is used to retrieve data and allow to set parameters
such as cache duration and knobs to invalidate the cache.
The caches require some cooperation from the plugins so that the
methods that provide cacheable data would try to locate and consult an
appropriate cache first, just like index_html in some basic OFS types
now consults ZCache_get before computing a result. The interfaces
itself would not be affected, just the implementations (which I would
handle myself, too).
What do you think?
jens
---------------
Jens Vagelpohl jens at zetwork.com
Software Engineer Zope - done medium rare
Zetwork GmbH http://www.zetwork.com/
More information about the Zope-PAS
mailing list