On Fri, Dec 14, 2001 at 10:43:02AM -0800, Rob Bloodgood wrote:
> > > Again, thank you, Rob.  This is great,
> >
> > > * Cache::FileCache (uses Storable)
> > > * Cache::SharedMemoryCache (uses Storable)
> > - Can specify the maximum cache size (Cache::SizeAwareFileCache) and/or
> > maximum time an object is allowed in the cache
> > - Follows the Cache::Cache interface system
> 
> I was using Cache::SharedMemoryCache on my system.  I figured, "Hey, it's
> RAM, right?  It's gonna be WAY faster than anything disk-based." (I was
> originally using IPC::Shareable and the caching model from the Eagle, but
> IPC::Shareable broke after like, 0.50 or something so it makes NEW shm
> segments with EVERY write.)

Another powerful tool for tracking down performance problems is perl's
profiler combined with Devel::DProf and Apache::DProf.  Devel::DProf
is bundled with perl. Apache::DProf is hidden in the Apache-DB package
on CPAN.

Using that combo made me realize that the real performance problem in
my code was parsing dates..  I ended up switching to using mod_perl's
date header parser, and used the slow perl method for dates not
formatted in http format.

At the same time I added some code to track the time it takes to
process a request using Time::HiRes.  This value is set as a note via
$r->note('REQTIME').  A customlog directive takes care of dumping that
value in the logs...

-- 
Paul Lindner   [EMAIL PROTECTED]    ||||| | | | |  |  |  |   |   |

    mod_perl Developer's Cookbook   http://www.modperlcookbook.org
         Human Rights Declaration   http://www.unhchr.ch/udhr/index.htm

Reply via email to