I have recently upgraded our modperl based web server to use Cache::SharedMemoryCache. The code is changed very little from in the docs - retrieve an entry from the cache if it is there, otherwise get an entry from the database and store it in the cache.
However, after about fifteen minutes of moderate use - probably with about 50 2-entry arrays stored in the cache and about 10000 or so cache hits, the whole system ground to a halt. You could do $cache=Cache::SharedMemoryCache->new() fine, but doing: $cache->set('foo','bar'); would never return. The server is a Sun E220 running Solaris 7, with Apache 1.3.20 and modperl 1.26 The same configuration on a Linux 2.4 box works fine - over a soak test of many hundreds of thousands of hits. If anybody has any ideas, I'd be glad to hear from you! In desperation, I have switched to Cache::FileCache - which works fine, but I would be interested to know, for a system that handles several hundred database queries per minute: - What is the performance difference between SharedMemoryCache and FileCache? - What is the performance difference between FileCache and a local MySQL database (on a simple indexed query)? - What about with a LAN connected MySQL database running on its own machine? - The SharedMemoryCache docs say that it shouldn't be used for "large" amounts of information. What size would be considered "large" on a machine with 4GB RAM? many thanks, Chris Allen [EMAIL PROTECTED]