On Sun, 16 Jan 2000, Steven Lembark wrote:

> given you have the core to support it...  try using libmm and
> a tied hash to just stash the stuff until it's asked for.  

Actually, we are currently developing a generic object caching interface
that will support a TTL based on expiration dates, and implementing this
in both Java and perl.  Since the perl version will be used most in a
multi-process environment (like apache/modperl) we'll back-end this on
mmap.  The java version will be used in both our middle tier (a
single-process threaded server) and in a servlet implementation of our
front-end, which also runs in a single process.

Right now, I do cache data in each httpd process, but since I haven't
implemented a TTL, I rely on the apache process dying naturally to clean
up the data.  Obviously, this creates *huge* httpd processes (50+ MB) with
non-shared but redundant data, and isn't particularly predictable.  Our
site is a little different that most ecommerce sites, because we have a
very low depth of inventory, and have to keep all the state in the
database, so that customers will rarely see out-of-date product data.

Ultimately, I hope to open up our entire source tree under the GPL anyway,
but I'll try to get the generic caching code out there earlier, if
possible.  I'll keep this list posted.  Unless someone has already done
this, that is.

-DeWitt






Reply via email to