Using Memcache with opentaps

From Opentaps Wiki
Revision as of 00:57, 21 December 2010 by Spark (talk | contribs) (Protected "Using Memcache with opentaps": Sysop page [edit=sysop:move=sysop])
Jump to navigationJump to search

opentaps can be integrated with the Memcached to use memcached in opentaps. This short tutorial teaches you how to configure the Memcached integration.

Start the Memcached Server

example: memcached -d -m 256 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid

Also you can choice your options for start memcached -p TCP port number to listen on (default: 11211) -U UDP port number to listen on (default: 11211, 0 is off) -s UNIX socket path to listen on (disables network support) -a access mask for UNIX socket, in octal (default: 0700) -l interface to listen on (default: INADDR_ANY, all addresses) -d run as a daemon -r maximize core file limit -u assume identity of (only when run as root) -m max memory to use for items in megabytes (default: 64 MB) -M return error on memory exhausted (rather than removing items) -c max simultaneous connections (default: 1024) -k lock down all paged memory. Note that there is a

         limit on how much memory you may lock.  Trying to
        allocate more than that would fail, so be sure you
        set the limit correctly for the user you started
        the daemon with (not for -u  user;
        under sh this is done with 'ulimit -S -l NUM_KB').

-v verbose (print errors/warnings while in event loop) -vv very verbose (also print client commands/reponses) -vvv extremely verbose (also print internal state transitions) -h print this help and exit -i print memcached and libevent license -P save PID in , only used with -d option -f chunk size growth factor (default: 1.25) -n minimum space allocated for key+value+flags (default: 48) -L Try to use large memory pages (if available). Increasing

             the memory page size could reduce the number of TLB misses
             and improve the performance. In order to get large pages
             from the OS, memcached will allocate the total item-cache
             in one large chunk.

-D Use as the delimiter between key prefixes and IDs.

             This is used for per-prefix stats reporting. The default is
             ":" (colon). If this option is specified, stats collection
             is turned on automatically; if not, then it may be turned on
             by sending the "stats detail on" command to the server.

-t number of threads to use (default: 4) -R Maximum number of requests per event, limits the number of

             requests process for a given connection to prevent
             starvation (default: 20)

-C Disable use of CAS -b Set the backlog queue limit (default: 1024) -B Binding protocol - one of ascii, binary, or auto (default) -I Override the size of each slab page. Adjusts max item size

             (default: 1mb, min: 1k, max: 128m)

Configuring opentaps

Edit the file framework/base/config/cache.properties:

  • Turn on memcached integration by changing default.cache.store from CacheLineTable to Memcached

Now you are ready. Restart opentaps, and let's see what it does!