Linux SoftwareProgrammingLibrariesIPC::SharedCache 1.3

IPC::SharedCache 1.3


IPC::SharedCache is a Perl module to manage a cache in SysV IPC shared memory. SYNOPSIS use IPC::SharedCache; # the cach
Developer:   Sam Tregar
      more software by author →
Price:  0.00
License:   Perl Artistic License
File size:   19K
Language:   
OS:   
Rating:   0 /5 (0 votes)
Your vote:  
enlarge screenshot


IPC::SharedCache is a Perl module to manage a cache in SysV IPC shared memory.

SYNOPSIS

use IPC::SharedCache;

# the cache is accessed using a tied hash.
tie %cache, 'IPC::SharedCache', ipc_key => 'AKEY',
load_callback => &load,
validate_callback => &validate;

# get an item from the cache
$config_file = $cache{'/some/path/to/some.config'};

This module provides a shared memory cache accessed as a tied hash.
Shared memory is an area of memory that is available to all processes. It is accessed by choosing a key, the ipc_key arguement to tie. Every process that accesses shared memory with the same key gets access to the same region of memory. In some ways it resembles a file system, but it is not hierarchical and it is resident in memory. This makes it harder to use than a filesystem but much faster. The data in shared memory persists until the machine is rebooted or it is explicitely deleted.

This module attempts to make shared memory easy to use for one specific application - a shared memory cache. For other uses of shared memory see the documentation to the excelent module I use, IPC::ShareLite (IPC::ShareLite).
A cache is a place where processes can store the results of their computations for use at a later time, possibly by other instances of the application. A good example of the use of a cache is a web server.

When a web server receieves a request for an html page it goes to the file system to read it. This is pretty slow, so the web server will probably save the file in memory and use the in memory copy the next time a request for that file comes in, as long as the file hasn't changed on disk.

This certainly speeds things up but web servers have to serve multiple clients at once, and that means multiple copies of the in-memory data. If the web server uses a shared memory cache, like the one this module provides, then all the servers can use the same cache and much less memory is consumed.

This module handles all shared memory interaction using the IPC::ShareLite module (version 0.06 and higher) and all data serialization using Storable. See IPC::ShareLite and Storable for details.
tags shared memory  this module  ipc sharelite  web server  the file  the same  ipc sharedcache  memory cache  request for  use ipc  the web  use the  the cache  

Download IPC::SharedCache 1.3


 http://mirrors.evolva.ro/CPAN/authors/id/S/SA/SAMTREGAR/IPC-SharedCache-1.3.tar.gz


Authors software

HTML::Template 2.8 (by Sam Tregar)
HTML::Template module attempts to make using HTML templates simple and natural

HTML::Template::Expr 0.07 (by Sam Tregar)

HTML::Template::JIT 0.05 (by Sam Tregar)
HTML::Template::JIT is a just-in-time compiler for HTML::Template

Krang 2.007 (by Sam Tregar)
Krang is an open-source content-management system designed to publish magazine websites

CGI::Application::Plugin::RateLimit 1.0 (by Sam Tregar)
CGI::Application::Plugin::RateLimit is a plugin for CGI::Application which provides protection against a user calling a runmode too f


Similar software

IPC::SharedCache 1.3 (by Sam Tregar)
IPC::SharedCache is a Perl module to manage a cache in SysV IPC shared memory.

SYNOPSIS

use IPC::SharedCache;

# the cach

mod_dns 1.3 (by Fredrik Sjoholm)
mod_dns is a Apache module that allows busy servers to resolve hostnames in realtime.

The module uses a shared memory cache to sto

Mod-Cache 1.2 (by QUE Hongyu)
Mod-Cache is a cache(reverse-proxy) accelerator plugin for lighttpd, which works like Squid with similar configuration

The Hoard Scalable Memory Allocator 3.5.1 (by Emery Berger)
The Hoard Scalable Memory Allocator is a scalable memory allocator (malloc replacement) for multithreaded applications.

The Hoard

Migshm 2.4.26-2 (by The Migshm team)
Migshm is a DSM patch for openMosix

WMMemFree 0.7 (by Draghicioiu Mihai)
WMMemFree shows system memory usage

OSSP mm 1.4.2 (by Ralf S. Engelschall)

libshbuf 0.0.3 (by Lennart Poettering)
libshbuf introduces a new IPC concept: the "shared buffer", a more flexible and faster alternative for standard Unix FIFOs.

Take som

mod_example_ipc 1.0 (by Sander Temme)
mod_example_ipc is an Apache module that showcases the use in an Apache 2.0 module of the Shared Memory and Mutex routines found in t

ShmFIFO library 1.0 (by World Wide Web Security)
ShmFIFO library provides an easy-to-use interface to shared memory for programs where one process needs to send blocks of data to oth


Other software in this category

zlib 1.2.3 (by Jean-loup Gailly)
zlib is designed to be a free, general-purpose, legally unencumbered, lossless data-compression library for use on virtually any comp

libjpeg v6b (by Independent JPEG Group)
libjpeg is a library for handling the JPEG (JFIF) image format

OpenSSL 0.9.7c (by The OpenSSL Project Team)
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implement

libxml2 2.6.27 (by DV)
Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform), libxml2 library i

GNU C library 2.4 (by Andreas Jaeger)
GNU C library (glibc) is one of the most important components of GNU Hurd and most modern Linux distributions.

GNU C library is us

    search


Featured Software

jEdit 4.3 pre8
jEdit is an Open Source text editor written in Java

Opera 9.02
Surf the Internet in a safer, faster, and easier way with Opera browser

GNU Aspell 0.60.4
GNU Aspell is a Free and Open Source spell checker designed to eventually replace Ispell


Subscribe in Rojo
Google Reader
Add to My Yahoo!

Add to My AOL
Subscribe with Bloglines
Subscribe in NewsGator Online
Add 'nixbit linux software' to Newsburst from CNET News.com
del.icio.us nixbit linux software


Top tags