轉載並修改自: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"