memcached development tree
dormando make flush-all.t more reliable
can end up sitting on the border of a second. better fix would be to poll the
server until it thinks at least 4s have passed, since in weird/slow scenarios
the tests can run faster than the daemon.
Latest commit 1ac5d63 Aug 8, 2018
Permalink
Failed to load latest commit information.
devtools Remove unused import from slab_loadgen script Jun 27, 2018
doc drop_privileges is no longer default if available. Jul 6, 2018
m4 Backporting AC_PROG_CC_C99 macro for redhat. Feb 20, 2010
scripts Include keys with non-[\w.~-] bytes in memcached-tool dump Jun 27, 2018
t make flush-all.t more reliable Aug 9, 2018
.gitignore gitignore/whitespace ignore update Aug 25, 2017
.shipit Checking in changes prior to tagging of version 1.2.4. Changelog diff… Dec 6, 2007
.travis.yml add support for travis-ci Aug 9, 2018
AUTHORS autoconf/automake support from evan Jun 14, 2003
BUILD better build instructions Jul 31, 2003
CONTRIBUTING.md I think the README was 12 years old. Feb 26, 2017
COPYING add a duplicate of the LICENSE file so GNU automake doesn't assume it… Aug 6, 2004
ChangeLog Spelling fixes May 24, 2017
Doxyfile Spelling fixes May 24, 2017
HACKING use a more explicit build example in HACKING Jun 17, 2018
LICENSE change from GPL to BSD. Jun 15, 2003
LICENSE.bipbuffer initial logger code. Jun 17, 2016
LICENSE.itoa_ljust import itoa_ljust.c for fast number printing Jan 8, 2017
Makefile.am build fixes Dec 21, 2017
NEWS danga.com -> memcached.org in a few spots. Apr 30, 2014
README.md Mark seccomp experimental Jul 1, 2018
assoc.c remove redundant counter/lock from hash table Feb 12, 2018
assoc.h remove redundant counter/lock from hash table Feb 12, 2018
autogen.sh fix configure.ac warning and use system automake Nov 18, 2015
bipbuffer.c fix solaris compiler warning in bipbuffer.c Jun 21, 2016
bipbuffer.h initial logger code. Jun 17, 2016
cache.c allow skipping thread-local cache locks Jan 8, 2017
cache.h fix solaris compilation error May 21, 2017
configure.ac Mark seccomp experimental Jul 1, 2018
crawler.c remove bad assert from crawler Jul 3, 2018
crawler.h limit crawls for metadumper Feb 12, 2018
crc32c.c gate arm crc32 behind --enable-arm-crc32 May 23, 2018
crc32c.h external storage base commit Nov 28, 2017
daemon.c Build fixes for ubuntu 8.10/64. Jan 20, 2009
docker-compose.yml Add Dockerfile definitions May 9, 2018
extstore.c extstore JBOD support Aug 6, 2018
extstore.h extstore JBOD support Aug 6, 2018
globals.c clean up global stats code a little. Jun 27, 2016
hash.c Make hash table algorithm selectable Apr 17, 2014
hash.h Make hash table algorithm selectable Apr 17, 2014
items.c expand NEED_ALIGN for chunked items Aug 9, 2018
items.h limit crawls for metadumper Feb 12, 2018
itoa_ljust.c conditionally don't inline the ASCII VALUE line Jan 8, 2017
itoa_ljust.h import itoa_ljust.c for fast number printing Jan 8, 2017
jenkins_hash.c fix typos Jan 1, 2015
jenkins_hash.h Make hash table algorithm selectable Apr 17, 2014
linux_priv.c Fix #399 - whitelist clock_gettime in seccomp rules Jun 27, 2018
logger.c add missing va_end() call to logger_log() Jul 11, 2018
logger.h Fix SIGBUS from alignment issues on 64bit ARM Mar 15, 2018
memcached.c expand NEED_ALIGN for chunked items Aug 9, 2018
memcached.h expand NEED_ALIGN for chunked items Aug 9, 2018
memcached.spec.in Spelling fixes Mar 14, 2018
memcached_dtrace.d fix for dtrace compilation Feb 16, 2018
murmur3_hash.c fix typos Jan 1, 2015
murmur3_hash.h Make hash table algorithm selectable Apr 17, 2014
openbsd_priv.c Rework pledge support after seccomp support has been added Nov 4, 2017
protocol_binary.h fix typos Jan 1, 2015
sasl_defs.c Use HAVE_SASL_CB_GETCONFPATH Mar 23, 2018
sasl_defs.h Specify hostname in sasl_server_new. Jan 28, 2012
sizes.c external storage base commit Nov 28, 2017
slab_automove.c extstore: C version of automove algorithm Dec 7, 2017
slab_automove.h extstore: C version of automove algorithm Dec 7, 2017
slab_automove_extstore.c extstore: revise automove algorithm Feb 9, 2018
slab_automove_extstore.h extstore: C version of automove algorithm Dec 7, 2017
slabs.c expand NEED_ALIGN for chunked items Aug 9, 2018
slabs.h extstore: prefill global page pool with extstore Dec 19, 2017
solaris_priv.c Remove compilation errors from gcc on Solaris Aug 23, 2009
stats.c Make hash table algorithm selectable Apr 17, 2014
stats.h stats_prefix_* should not assume that all keys are zero-terminated Jan 3, 2009
storage.c expand NEED_ALIGN for chunked items Aug 9, 2018
storage.h extstore JBOD support Aug 6, 2018
testapp.c Add drop_privileges() for Linux Aug 24, 2017
thread.c split storage writer into its own thread Aug 3, 2018
timedrun.c Followed directions of issue 386 regarding posix signals Aug 9, 2018
trace.h remove redundant counter/lock from hash table Feb 12, 2018
util.c Print with more-restricted format string to fix compiler warning Feb 26, 2017
util.h "lru tune" command for setting LRU parameters Jan 30, 2017
version.pl Make autoversioning/spec gen work better. Nov 2, 2009
version.sh Generate the memcached.spec along with the version number. Aug 29, 2009

README.md

Memcached

Memcached is a high performance multithreaded event-based key/value cache store intended to be used in a distributed system.

See: https://memcached.org/about

A fun story explaining usage: https://memcached.org/tutorial

If you're having trouble, try the wiki: https://memcached.org/wiki

If you're trying to troubleshoot odd behavior or timeouts, see: https://memcached.org/timeouts

https://memcached.org/ is a good resource in general. Please use the mailing list to ask questions, github issues aren't seen by everyone!

Dependencies

  • libevent, http://www.monkey.org/~provos/libevent/ (libevent-dev)
  • libseccomp, (optional, experimental, linux) - enables process restrictions for better security. Tested only on x86_64 architectures.

Environment

Be warned that the -k (mlockall) option to memcached might be dangerous when using a large cache. Just make sure the memcached machines don't swap. memcached does non-blocking network I/O, but not disk. (it should never go to disk, or you've lost the whole point of it)

Website

Contributing

See https://github.com/memcached/memcached/wiki/DevelopmentRepos