You can use shared memory between apache processes. Check:
*Apache::SharedMem*
<http://search.cpan.org/author/RSOLIV/Apache-SharedMem-0.09/lib/Apache/SharedMem.pm>
*Tie::ShareLite*
<http://search.cpan.org/author/NSHAFER/Tie-ShareLite-0.03/ShareLite.pm>
*Cache::SharedMemoryCache*
<http://search.cpan.org/author/DCLINTON/Cache-Cache-1.05/lib/Cache/SharedMemoryCache.pm>
all based on
*IPC::ShareLite*
<http://search.cpan.org/author/MAURICE/IPC-ShareLite-0.09/ShareLite.pm>
Cache::SharedMemoryCache say though, a decent OS will keep a frequently
accessed *disk* cache in memory anyway through buffers etc. So a disk
-based cache can frequently be as fast as shared memory.
So you'll probably find that Perrin's BDB suggestion is the quickest -
easy to implement solution.
Carl