转载并修改自:http://www.javaeye.com/topic/110112java
核心步骤:wget下载libevent和memcached 1.先安装libevent。配置时须要指定安装路径 即./configure --prefix=/usr;而后make;而后make install; 2.安装memcached,配置时须要指定libevent的安装路径 即./configure --with-libevent=/usr;而后make;而后make install;
Ubuntu下只需sudo apt-get install memcached便可
memcached下载地址:http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz 服务器
Memcache用到了libevent这个库用于Socket的处理,因此还须要安装libevent。(若是你的系统已经安装了libevent,能够不用安装) 并发
官网:http://www.monkey.org/~provos/libevent/ app
测试libevent是否安装成功: memcached
测试是否成功安装memcached: 测试
安装完成后的memcached在 /usr/local/bin/memcached ui
这时运行memcached -m 500 -p 11333, 有可能会出现:spa
memcached: error while loading shared libraries: libevent-1.2.so.1: cannot open shared object file: No such file or directory code
这说明没有找到文件:libevent-1.2.so.1orm
解决办法以下:
第一步. 查看下lib路径:
which memcached 获得/usr/local/memcached/bin/memcached
LD_DEBUG=libs /usr/local/memcached/bin/memcached -v
第二步. 将libevent-1.2.so.1拷贝到任何一个列出的lib下。或者软连接到列出的lib下(不少状况下是/usr/lib下有该文件,须要把该文件拷贝到/usr/lib64/下)
memcached -d -m 10 -u root -l 192.168.40.4 -p 12000 -c 256 -P /tmp/memcached.pid
参数说明:
-d选项是启动一个守护进程
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB
-u是运行Memcache的用户,我这里是root
-l是监听的服务器IP地址
-p是设置Memcache监听的端口,最好是1024以上的端口
-c选项是最大运行的并发链接数,默认是1024,按照你服务器的负载量来设定
-P是设置保存Memcache的pid文件
Memcached 操做:
telnet localhost 11334
set foo 0 0 3
bar
STORED
get foo
VALUE foo 0 3
bar
quit
Memcache命令:
存储命令: set/add/replace/append/prepend/cas
获取命令: get/gets
其余命令:delete/stats等
Shell操做memcache:
一、数据存储(假设key为foo,value为123)
printf "set foo 0 0 3\r\n123\r\n" | nc 127.0.0.1 11334
STORED
二、数据取回(假设key为foo)
printf "get foo\r\n" | nc 127.0.0.1 11334
VALUE foo 0 3
123
END
三、数值增长1(假设key为foo,而且value为正整数)
printf "incr foo 1\r\n" | nc 127.0.0.1 11334
124
四、数值减小3(假设key为foo,而且value为正整数)
printf "decr foo 3\r\n" | nc 127.0.0.1 11334
121
五、数据删除(假设key为foo)
printf "delete foo\r\n" | nc 127.0.0.1 11334
DELETED
六、查看Memcached状态
printf "stats\r\n" | nc 127.0.0.1 11334
STAT pid 22563
STAT uptime 90706
七、模拟top命令,查看Memcached状态:
watch "printf 'stats\r\n' | nc 127.0.0.1 11334"
watch "echo stats | nc 127.0.0.1 11334"