mmap -> lmc_valloc -> hashtable. BAM database
C Ruby Shell C++ Perl
Latest commit 236aab4 May 22, 2013 Sven Koehler Removed warning.
Permalink
Failed to load latest commit information.
bench Benchmark works with 0.4.0. May 6, 2009
example
site
src Removed warning. May 21, 2013
.gitignore
AUTHORS Initial import. Feb 28, 2009
COPYING Initial import. Feb 28, 2009
LICENSE Updated site. Mar 6, 2009
Makefile.in Packages are now built in project dir. Mar 4, 2009
README Revert "Integrating Paul Minero's improvements." Sep 25, 2009
Rakefile * Fixes for Ruby 1.9 Oct 2, 2009
THANKS Preparations for 0.4.3. Sep 25, 2009
VERSION Version bumped to 0.4.4 Nov 10, 2009
aclocal.m4 Packages are now built in project dir. Mar 4, 2009
configure Use better temp file name. Mar 5, 2010
configure.in Use better temp file name. Mar 5, 2010
localmemcache.gemspec Add gemspec for testing. Feb 8, 2013

README

Localmemcache README
=====================

A persistent key-value database based on mmap()'ed shared memory.

* http://localmemcache.rubyforge.org/

WHAT IS IT?
===========

Localmemcache is a library for C and ruby that aims to provide
an interface similar to memcached but for accessing local data instead of
remote data.  It's based on mmap()'ed shared memory for maximum speed.
Since version 0.3.0 it supports persistence, also making it a fast
alternative to GDBM and Berkeley DB.

SUPPORTED SYSTEMS
=================

- a >=64bit Unix (32bit is possible but you'll run out of virtual address
  space quickly)
- a file system that offers sparse files

Note for OS X: OS X disqualifies as HFS+ doesn't have sparse files and
sem_timedwait() and sem_getvalue() aren't supported as well.

Note for FreeBSD: It has been reported that Localmemcache sometimes hangs
there, it is not yet clear what the problem is.

EXAMPLE
=======

In Ruby:

require 'localmemcache'
# 1. the memcached way
# $lm = LocalMemCache.new :namespace => :viewcounters
# 2. the GDBM way
#$lm = LocalMemCache.new :filename => "./viewcounters.lmc"
# 3. Using LocalMemCache::SharedObjectStorage
$lm = LocalMemCache::SharedObjectStorage.new :filename => "./viewcounters.lmc"
$lm[:foo] = 1
$lm[:foo]
$lm.delete(:foo)

INSTALLATION
============

Ruby binding:

# gem install localmemcache

If you just want to use the C API, download the .tar.gz from:

http://rubyforge.org/frs/?group_id=7925