苏苏的博客

简约至极

memcached安装与使用

安装memcached

http://memcached.org/downloads

memcached所有版本见http://www.memcached.org/files/

cd /tmp
MEMCACHE_VERSION=memcached-1.5.1
CPU_NUM=`cat /proc/cpuinfo | grep processor | wc -l`
wget http://www.memcached.org/files/${MEMCACHE_VERSION}.tar.gz
tar xzf ${MEMCACHE_VERSION}.tar.gz
cd ${MEMCACHE_VERSION}
export CFLAGS="-O3"
./configure
make -j$CPU_NUM && make install

docker版本见:https://hub.docker.com/r/suconghou/memcached/

静态编译

apk update && apk upgrade && apk add gcc g++ make wget

wget --no-check-certificate https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
tar zxf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8-stable
./configure && make && make install

libevent编译很快,不到一分钟

cd /tmp
MEMCACHE_VERSION=memcached-1.5.1
wget http://www.memcached.org/files/${MEMCACHE_VERSION}.tar.gz
tar xzf ${MEMCACHE_VERSION}.tar.gz
cd ${MEMCACHE_VERSION}
export CFLAGS="-O3"
./configure --disable-docs
make LDFLAGS=-static && make install

启动Memcached

memcached -d -u nobody -p 11211 -m 8 -P /var/run/memcached.pid

说明

  • -d 以daemon方式运行
  • -u 绑定使用指定用户运行进程(仅在以root运行的时候有效)
  • -p 设置TCP端口号(默认11211)
  • -m 允许最大内存用量,单位M (默认: 64 MB)
  • -M 内存耗尽时返回错误,而不是删除项
  • -l 是监听的服务器IP地址,默认应该是本机
  • -P 将PID写入文件,这样可以使得后边进行快速进程终止, 需要与-d 一起使用
  • -c 最大同时连接数,默认是1024
  • -t 线程数,默认为4
  • -v 输出警告和错误信息
  • -vv 打印客户端的请求和返回信息

默认情况下是不限制访问IP的,相当于是外网和内网都能访问,-l 使只有这个IP能访问

尽量不要用root用户运行.

状态查看

使用 telnet 连接 memcached stats settings可以查看所有参数设置

memcached状态和性能查看

stats命令

memcached stats命令

官方也提供监控工具

https://github.com/memcached/memcached/blob/master/scripts/memcached-tool

使用-s 参数指定一个Unix Socket路径,使其不使用IP绑定,而使用unix socket