[CDBI] Disabling %Live_Objects; creating a cache
rick at praxis.com.au
Fri Jan 13 01:09:43 GMT 2006
Perrin Harkins wrote:
> On Fri, 2006-01-13 at 10:44 +1100, Rick Welykochy wrote:
>>In a post before Xmas someone mentioned turning off the %Live_Objects
>>mechanism in a thread about CDBI scalability and speed.
>>Is this a practical thing to do? Has anyone tried?
> You'll never get it turned off! NEVER! Ha ha ha!
> Or use this:
> $Class::DBI::Weaken_Is_Available = 0;
Ah ... so simple, I missed it! Thanks.
>>Also, has anyone thought about / implemented an object cache for
>>CDBI? Seems like a relatively easy thing to do.
> Caching database data is never all that easy. There are complex issues
> involved. You can try the caching in Class::DBI::Sweet or you can ditch
> Class::DBI and try Rose::DB::Object, which has caching. I think you'll
> find it opens a can of worms, but may be worth it if your system is
> having performance problems.
I have written caching systems for web-based DB app before (not using
Class::DBI). Web apps are often ideal candidates for caching: usually
lots and lots of readonly data, and the data are very shortlived.
The gotchas I know involve updates to the database and keeping the
cache in sync with those changes. Often, a simple brute-force approach
if data gets out of sync is to clear the cache when data is being updated
prior to displaying results that rely on the update.
Rick Welykochy || Praxis Services
Maybe this world is another planet's Hell.
-- Aldous Huxley
More information about the ClassDBI