[ZODB-Dev] [Enhancement Proposal] Memory size limited Cache

Pascal Peregrina Pperegrina at Lastminute.com
Thu Oct 5 09:45:09 EDT 2006


Hi,

I have some random thoughts about ZODB Connection caching that I should have
written down a while ago... So I take this thread as an opportunity to do
so.

It would be interesting to have a solution for pure Read-Only Zope instances
(using a ZEO architecture, but it might work with a local FileStorage) to
allow several requests to be served from the same "Connection object", in
order to maximize the in-memory cache (one single cache compared to one
cache per connection object), and minimize the invalidations processing. So
this is something like an alternate simple transaction management for read
only transactions and several Zope requests being handled in the same
transaction. I hope that makes (some) sense.

And again, when using multiple Zope instances with ZEO, and especially
Read-Only Zope instances, it would be interesting to be able to have an
efficient shared cache... Maybe something based on MemCached?

The above might be pure nonsense, as I said, just some random thoughts.

But at least now they are written down ;)

Pascal


> De : Jim Fulton <jim at zope.com>
> Date : Thu, 05 Oct 2006 08:46:27 -0400
> À : Dieter Maurer <dieter at handshake.de>
> Cc : <zodb-dev at zope.org>
> Objet : Re: [ZODB-Dev] [Enhancement Proposal] Memory size limited Cache
> 
> Dieter Maurer wrote:
>> A new proposal:
>> 
>>   http://www.zope.org/Wikis/ZODB/MemorySizeLimitedCache
>> 
>> It outlines how to implement a ZODB cache limited not be the
>> number of containing objects but by their estimated memory size.
>> 
>> Feedback welcome -- either here or in the Wiki.
> 
> I'm going to reply here because I think discussion is easier here, at
> least in the short term.
> 
> First, I like the gist of the proposal. I think the proposal
> should be split into 2 proposals:
> 
> 1. Refactor (persistence and) cache management to reduce coupling
>     between persistence, database, and cache frameworks.
> 
>     This needs more thought and specification.  I'm gonna spend
>     some time today on a proposal that is mostly complementary to
>     yours.
> 
>     I'll note that, as a guiding principle, any refactoring we do
>     should allow pure-python implementation. This means that APIs
>     need to be Python APIs, although we should consider efficient
>     C implementations when designing these APIs.
> 
> 2. Provide object size information to the cache for use in it's
>     functioning.
> 
> I wouldn't do much to this proposal until you've had a chance to read
> mine. :)
> 
> Jim
> 
> -- 
> Jim Fulton           mailto:jim at zope.com       Python Powered!
> CTO                  (540) 361-1714            http://www.python.org
> Zope Corporation     http://www.zope.com       http://www.zope.org
> _______________________________________________
> For more information about ZODB, see the ZODB Wiki:
> http://www.zope.org/Wikis/ZODB/
> 
> ZODB-Dev mailing list  -  ZODB-Dev at zope.org
> http://mail.zope.org/mailman/listinfo/zodb-dev



**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.

This footnote also confirms that this email message has been swept by
MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************


More information about the ZODB-Dev mailing list