一般:啓動Memcache的服務器端的命令爲:
# /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid
-d選項是啓動一個守護進程,
-m是分配給Memcache使用的內存數量,單位是MB,我這裏是10MB,
-u是運行Memcache的用戶,我這裏是root,
-l是監聽的服務器IP地址,若是有多個地址的話,我這裏指定了服務器的IP地址127.0.0.1,
-p是設置Memcache監聽的端口,我這裏設置了11211,最好是1024以上的端口,
-c選項是最大運行的併發鏈接數,默認是1024,我這裏設置了256,按照你服務器的負載量來設定,
-P是設置保存Memcache的pid文件,我這裏是保存在 /tmp/memcached.pid,
想開機自動啓動的話,只需在/etc/rc.d/rc.local中加入一行,上面命令
有人用如下命令:
/usr/local/memcached/bin/memcached -d -m 20 -p 11211 -u apache
上面有些東西能夠參考一下:即,ip不指定時,默認是本機,用戶,最好選擇是:apache 或 deamon
這樣,也就是屬於哪一個用戶的服務,由哪一個用戶啓動。
問題:
若是啓動時出現「memcached: error while loading shared libraries:libevent-2.0.so.5: cannot
open shared object file: No such file or directory」之類的信息,表示memcached 找不到
libevent 的位置
因此,請先使用whereis libevent 獲得位置,而後鏈接到memcached 所尋找的路徑
首先查看,libevent 在哪裏
# whereis libevent
libevent: /usr/local/lib/libevent.la /usr/local/lib/libevent.so /usr/local/lib/libevent.a
而後,再看memcached 從哪裏找它
# LD_DEBUG=libs memcached -v 2>&1 > /dev/null | less
能夠看到:是/usr/lib/libevent-2.0.so.5,因此,建立軟鏈
[root@localhost tools]# ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5
再次啓動
memcache在php中使用
使用memcache類
$mem=new \Memcache;
$mem->connect('x.x.x.x',11211);
$mem->set('name','lzh');
$val = $mem->get('name');
使用memcached類
$mem1=new \Memcached;
$mem1->addServer('39.106.51.x',11211);
$mem1->set('name1','lzh1');
$val1 = $mem1->get('name1');
$val2 = $mem1->get('name');
由於同用一個memcache服務器,$val 和 $val2取值同樣。
安裝完memcached後memcache的使用進程爲memcached服務器的memcached.pid