memcached - high-performance memory object caching system
This manual page documents briefly the memcached memory object caching daemon.
memcached is a flexible memory object caching daemon designed to alleviate database load
in dynamic web applications by storing objects in memory. It's based on libevent to scale
to any size needed, and is specifically optimized to avoid swapping and always use non-
These programs follow the usual GNU command line syntax. A summary of options is included
Unix socket path to listen on (disables network support).
Permissions (in octal format) for Unix socket created with -s option.
Listen on <ip_addr>; default to INADDR_ANY. This is an important option to consider
as there is no other way to secure the installation. Binding to an internal or
firewalled network interface is suggested.
-d Run memcached as a daemon.
Assume the identity of <username> (only when run as root).
Use <num> MB memory max to use for object storage; the default is 64 megabytes.
Use <num> max simultaneous connections; the default is 1024.
This option seeks to prevent client starvation by setting a limit to the number of
sequential requests the server will process from an individual client connection.
Once a connection has exceeded this value, the server will attempt to process I/O
on other connections before handling any further request from this connection. The
default value for this option is 20.
-k Lock down all paged memory. This is a somewhat dangerous option with large caches,
so consult the README and memcached homepage for configuration suggestions.
Listen on TCP port <num>, the default is port 11211.
Listen on UDP port <num>, the default is port 11211, 0 is off.
-M Disable automatic removal of items from the cache when out of memory. Additions
will not be possible until adequate space is freed up.
-r Raise the core file size limit to the maximum allowable.
Use <factor> as the multiplier for computing the sizes of memory chunks that items
are stored in. A lower value may result in less wasted memory depending on the
total amount of memory available and the distribution of item sizes. The default
Allocate a minimum of <size> bytes for the item key, value, and flags. The default
is 48. If you have a lot of small keys and values, you can get a significant memory
efficiency gain with a lower value. If you use a high chunk growth factor (-f
option), on the other hand, you may want to increase the size to allow a bigger
percentage of your items to fit in the most densely packed (smallest) chunks.
-C Disable the use of CAS (and reduce the per-item size by 8 bytes).
-h Show the version of memcached and a summary of options.
-v Be verbose during the event loop; print out errors and warnings.
-vv Be even more verbose; same as -v but also print client commands and responses.
-i Print memcached and libevent licenses.
Print pidfile to <filename>, only used under -d option.
Number of threads to use to process incoming requests. This option is only meaning-
ful if memcached was compiled with thread support enabled. It is typically not use-
ful to set this higher than the number of CPU cores on the memcached server. The
default is 4.
Use <char> as the delimiter between key prefixes and IDs. This is used for per-pre-
fix 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.
-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.
Only available if supported on your OS.
Set the backlog queue limit to <num> connections. The default is 1024.
Specify the binding protocol to use. By default, the server will autonegotiate
client connections. By using this option, you can specify the protocol clients
must speak. Possible options are "auto" (the default, autonegotiation behavior),
"ascii" and "binary".
Override the default size of each slab page. Default is 1mb. Default is 1m, minimum
is 1k, max is 128m. Adjusting this value changes the item size limit. Beware that
this also increases the number of slabs (use -v to view), and the overal memory
usage of memcached.
-S Turn on SASL authentication. This option is only meaningful if memcached was com-
piled with SASL support enabled.
Comma separated list of extended or experimental options. See -h or wiki for up to
The memcached daemon is copyright Danga Interactive and is distributed under the BSD
license. Note that daemon clients are licensed separately.
The README file that comes with memcached
The memcached daemon was written by Anatoly Vorobey <firstname.lastname@example.org> and Brad Fitz-
patrick <email@example.com> and the rest of the crew of Danga Interactive
April 11, 2005 MEMCACHED(1)