1. 首先下載下傳memcached 和 libevent 包。 Memcached用到了libevent這個庫用于Socket的處理。下面是下載下傳的兩個封包件:
libevent-1.4.12-stable.tar.gz
memcached-1.4.3.tar.gz
2. 上傳這兩個包到/tmp/chenxinhan/memcached目錄(自建目錄)下。
3. 解壓并安裝:
tar -zxf libevent-1.4.12-stable.tar.gz
tar -zxf memcached-1.4.3.tar.gz
cd libevent-1.4.12-stable
./configure --prefix=/usr
make
make install
cd ../ memcached-1.4.3
./configure --with-libevent=/usr
make
makeinstall
4. 啟動Memcached
完成上述操作後,memcached被安裝/usr/local/bin/目錄下。啟動Memcache的伺服器的指令:
/usr/local/bin/memcached -d -m 1024 -u root -l 192.168.13.236 -p 12001 -c 256 -P /tmp/chenxinhan/memcached.pid
參數說明:
-d 選項是啟動一個守護程序,
-m 是配置設定給Memcache使用的記憶體數量,機關是MB,這裡是1GB,
-u 是運作Memcache的使用者,這裡是root,
-l 是監聽的伺服器IP位址,如果有多個位址的話,以逗号隔開。這裡指定了伺服器的IP位址192.168.13.236,
-p 是設定Memcache監聽的端口,我這裡設定了12001,最好是1024以上的端口,
-c 選項是最大運作的并發連接配接數,預設是1024,我這裡設定了256,按照你伺服器的負載量來設定,
-P 是設定儲存Memcache的pid檔案,我這裡是儲存在 /tmp/chenxinhan/memcached.pid,
5. 結束Memcache程序,執行:
kill `cat /tmp/chenxinhan/memcached.pid`
或者:
ps -aux | grep memcache
然後直接kill掉memcache程序。
6. 可以啟動多個守護程序,但是端口不能一樣。這樣就可以在一台機器上擁有多個Memcached
7. 代碼測試:
public static void main(String[] args) {
try {
MemcachedClient client = new MemcachedClient(new InetSocketAddress("192.168.2.9",11211));
client.set("mykey", 100, "here is my key");
System.out.println(client.get("mykey"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
memcached -d -m 1024 -u root -l 192.168.2.9 -p 11211 -P /usr/local/tmp/memcached.pid