NAME
Cache::AgainstFile::Storable - cache data structures parsed from files in Storable files
SYNOPSIS
use Cache::AgainstFile;
my $cache = new Cache::AgainstFile(
\&loader,
{
Method => 'Storable',
CacheDir => '/var/tmp/cache/myapp',
# ...
}
);
$data = $cache->get($filename);
DESCRIPTION
Data structures parsed from files are cached in "shadow" storable files. If parsing is significantly more expensive than file I/O (e.g. with XML files), then this will offer some benefit.
This backend is suitable for non-persistent environments (e.g. CGI scripts) where you want the cache to outlive the process. For persistent environments, the Memory backend may be more suitable as it saves on file I/O.
count() and size() are relatively expensive operations involving scanning the cache directory.
OPTIONS
- CacheDir
-
Directory in which to store cache files. This is mandatory.
- MaxATime
-
Purge items older than this. Value is in seconds (default=undefined=infinity)
- MaxItems
-
Purge oldest items from the cache to reduce the number of items in the cache to be at most this number. Value should be an integer (default=undefined=infinity)
- NoStat
-
Don't stat files to validate the cache - items are served from the cache until they are purged. Valid values are 0|1 (default=0, i.e. files are statted)
- Locking
-
Valid values are Flock and AtomicWrite (default is AtomicWrite). If neither of these are to your taste, consider using Cache::AgainstFile::CacheModule with another caching module. Some other file caching modules on CPAN are:
VERSION
$Revision: 1.22 $ on $Date: 2006/05/09 09:02:32 $ by $Author: mattheww $
AUTHOR
John Alden & Piers Kent <cpan _at_ bbc _dot_ co _dot_ uk>
COPYRIGHT
(c) BBC 2005. This program is free software; you can redistribute it and/or modify it under the GNU GPL.
See the file COPYING in this distribution, or http://www.gnu.org/licenses/gpl.txt