[Zope-PAS] Re: RFC: PAS caching

Jens Vagelpohl jens at dataflake.org
Sat Oct 9 05:14:56 EDT 2004


> I'm not sure why you want this part.  For instance, why not just have 
> a single RAM cache manager, and then associate the plugins with it?  
> Each one of the plugins is responsible for identifying the keys, and 
> therefore could use themselves as the 'ob', e.g.::
>
>   cached = self._cache.ZCache_get(ob==self,
>                                   keywords={'criteria':criteria})
>   if cached is not None:
>      return cached
>   # ... do the work
>   self._cache.ZCache_set(ob=self, data=result,
>                          keywords={'criteria':criteria})
>   return result

I'll take a look at what that would entail when I get back home.


>> The other option is to have the PAS serve as the "cache manager" for 
>> its plugins;  the potential win is that the PAS might be able to 
>> avoid even consulting the plugins if it knew that a cached value was 
>> available. The current implementation at least contemplates this, 
>> although it is mostly commented out.

This would most likely necessitate dirty circular interactions between 
plugins and PAS I am thinking. A plugin would handle a user update. Now 
the user must be thrown out of the cache, meaning the plugin would have 
to know and talk to the PAS instance :/

jens
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2365 bytes
Desc: not available
Url : http://mail.zope.org/pipermail/zope-pas/attachments/20041009/1258b905/smime.bin


More information about the Zope-PAS mailing list