From 085c64abc297a876726ad4583e706fb02b3f3f86 Mon Sep 17 00:00:00 2001 From: dormando Date: Wed, 30 Mar 2011 01:50:09 -0700 Subject: [PATCH] Update the base doc files a bit. Kill some outdated ones, make information more accessable in the remaining. Updated the AUTHORS file to point out that there're more than two. --- AUTHORS | 4 ++++ BUILD | 37 ------------------------------------- HACKING | 6 +++++- NEWS | 1 - README | 30 +++++++++++++++++++----------- doc/CONTRIBUTORS | 32 +++----------------------------- 6 files changed, 31 insertions(+), 79 deletions(-) delete mode 100644 BUILD delete mode 100644 NEWS diff --git a/AUTHORS b/AUTHORS index fc95232f5f..82dd3ebcf5 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,2 +1,6 @@ +Original authors: + Anatoly Vorobey Brad Fitzpatrick + +For everyone else, see git or http://www.memcached.org/about diff --git a/BUILD b/BUILD deleted file mode 100644 index d6ca4c4956..0000000000 --- a/BUILD +++ /dev/null @@ -1,37 +0,0 @@ -Ideally, you want to make a static binary, otherwise the dynamic -linker pollutes your address space with shared libs right in the -middle. (NOTE: actually, this shouldn't matter so much anymore, now -that we only allocate huge, fixed-size slabs) - -Make sure your libevent has epoll (Linux) or kqueue (BSD) support. -Using poll or select only is slow, and works for testing, but -shouldn't be used for high-traffic memcache installations. - -To build libevent with epoll on Linux, you need two things. First, -you need /usr/include/sys/epoll.h . To get it, you can install the -userspace epoll library, epoll-lib. The link to the latest version -is buried inside -http://www.xmailserver.org/linux-patches/nio-improve.html ; currently -it's http://www.xmailserver.org/linux-patches/epoll-lib-0.9.tar.gz . -If you're having any trouble building/installing it, you can just copy -epoll.h from that tarball to /usr/include/sys as that's the only thing -from there that libevent really needs. - -Secondly, you need to declare syscall numbers of epoll syscalls, so -libevent can use them. Put these declarations somewhere -inside : - -#define __NR_epoll_create 254 -#define __NR_epoll_ctl 255 -#define __NR_epoll_wait 256 - -After this you should be able to build libevent with epoll support. -Once you build/install libevent, you don't need to -compile memcache or link it against libevent. Don't forget that for epoll -support to actually work at runtime you need to use a kernel with epoll -support patch applied, as explained in the README file. - -BSD users are luckier, and will get kqueue support by default. - - - diff --git a/HACKING b/HACKING index 60bfa9f29e..d918ac0cbc 100644 --- a/HACKING +++ b/HACKING @@ -6,13 +6,17 @@ - automake - autotools - libevent + - git * Getting Started After checking out a git repository, you must first run autogen.sh once in order to create the configure script. -Next, run the configure script and start doing builds. + $ git clone git://github.com/memcached/memcached.git + +Next, run the configure script and start doing builds: + $ ./config/autorun.sh && ./configure && make && make test * Setting up Git diff --git a/NEWS b/NEWS deleted file mode 100644 index 78b1eca83c..0000000000 --- a/NEWS +++ /dev/null @@ -1 +0,0 @@ -http://www.danga.com/memcached/news.bml diff --git a/README b/README index f20dd8c18f..3fcf114bd4 100644 --- a/README +++ b/README @@ -1,23 +1,31 @@ +Super fast totally awesome distributed memory object caching daemon. + +Requires a client to fully utilize, which you may research at the wiki: + + http://www.memcached.org/wiki + +The ASCII protocol is documented in doc/protocol.txt - the newer binary +protocol is documented on the wiki above. + Dependencies: -- libevent, http://www.monkey.org/~provos/libevent/ (libevent-dev) -If using Linux, you need a kernel with epoll. Sure, libevent will -work with normal select, but it sucks. +Ideally you have a recent version of libevent (1.4+), and a recent OS (at +least from the last 4 years). -epoll isn't in Linux 2.4, but there's a backport at: +QUICK INSTALL: - http://www.xmailserver.org/linux-patches/nio-improve.html + $ ./configure && make && make test && sudo make install -You want the epoll-lt patch (level-triggered). +By default memcached builds with a bundled version of libevent, to make it +easier to build on older distributions. If you are packaging memcached or +otherwise wish to use the libevent provided by your distro, build with: -If you're using MacOS, you'll want libevent 1.1 or higher to deal with -a kqueue bug. + $ ./configure --disable-bundled-libevent -Also, 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) +Please try to ensure memcached isn't swapping. It is designed to be ultra fast +while relying on RAM. SWAP is not necessarily RAM. The memcached website is at: diff --git a/doc/CONTRIBUTORS b/doc/CONTRIBUTORS index b87e5c604a..7ccce8e556 100644 --- a/doc/CONTRIBUTORS +++ b/doc/CONTRIBUTORS @@ -1,12 +1,7 @@ MEMCACHED CONTRIBUTORS -This file contains a list of people who have contributed code and -effort to the memcached project. If you don't see your name mentioned -send email to the memcached mailing list so you can be immortalized. - -Also see the ChangeLog for even more people who have helped over the -years by submitting fixes, patches and reporting bugs. - +This is an old file describing the earliest memcached pioneers. For everyone +else, there is the web. Major authors: -------------- @@ -21,25 +16,4 @@ Steven Grimm -- iov writing (less CPU), UDP mode, Other Contributors ------------------ -Evan Martin -Nathan Neulinger -Eric Hodel -Michael Johnson -Paul Querna -Jamie McCarthy -Philip Neustrom -Andrew O'Brien -Josh Rotenberg -Robin H. Johnson -Tim Yardley -Paolo Borelli -Eli Bingham -Jean-Francois Bustarret -Paul G -Paul Lindner -Dormando -Dustin Sallings -Chris Goffinet -Tomash Brechko -Brian Aker -Trond Norbye +See full authors list in git, or at: http://www.memcached.org/about