On Tue, 2007-09-25 at 15:25 +1000, Cameron Brunner wrote:> memcache knows nothing of relationships, update a parent, the children> need to be updated too, there in itself lies a HUGE issue. David has> come up with a concept on how to handle this somewhat but on a site> with a lot of updates, its completely useless to add a caching layer> in this respect.Of course memcache is only the backend for the caching discussed. I'dreally appreciate if you provide a link to the concept you've mentioned.

Let's assume we'd just cache all selects and invalidate the whole cacheupon updates, wouldn't we still get a slight performance boost? At thispoint the caching could be improved step by step if possible.

> Anyway, my 2c, propel is the wrong place to be doing this for the most> part, i would seriously reconsider the level you are trying to> implement memcache at at this point in time. You could always create a> wrapper to BlahPeer::doSelect that had an optional cacheTimeout> variable that let you set a static timeout for the cache but... i'm> not a fan of time based caches, if they aren't intelligent there is> little point a lot of the time. Anyway, good luck either way.That means you'd rather place an additional layer between Propel andCreole/PDO than coupling the caching with Propel directly? Wouldn't thatmean to duplicate Propel's functionality at some places likeparent-children relationship mappings? So in how far would that bebetter?