1.下載
官網
memcached 依賴 libevent-devel
需要先安裝libevent-devel
1 yum -y install libevent-devel
安裝完畢
繼續安裝memcached
1 wget http://memcached.org/files/memcached-1.4.35.tar.gz 2 3 tar -zxvf memcached-1.4.35.tar.gz 4 5 cd memcached-1.4.35.tar.gz 6 7 ./configure && make && sudo make install
安裝成功 ,可以在
1 /usr/local/bin 2 找到memcached
2.啟動與關閉
1.啟動服務端
1 /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 12000 -c 256 -P /tmp/memcached.pid
說明:
1 -d選項是啟動一個守護進程, 2 -m是分配給Memcache使用的內存數量,單位是MB,我這里是10MB, 3 -u是運行Memcache的用戶,我這里是root, 4 -l是監聽的服務器IP地址,如果有多個地址的話,我這里指定了服務器的IP地址127.0.0.1 5 -p是設置Memcache監聽的端口,我這里設置了12000,最好是1024以上的端口, 6 -c選項是最大運行的並發連接數,默認是1024,我這里設置了256,按照你服務器的負載量來設定, 7 -P是設置保存Memcache的pid文件,我這里是保存在 /tmp/memcached.pid,
檢查是否啟動成功:
1 [root@localhost bin]# ps aux |grep memcached 2 apache 9949 0.0 0.4 324676 4104 ? Ssl 10:21 0:01 /usr/local/bin/memcached -d -m 10 -u apache -l 127.0.0.1 -p 12000 -c 256 -P /tmp/memcached.pid 3 root 10652 0.0 0.0 112648 960 pts/0 R+ 11:08 0:00 grep --color=auto memcached
2.結束memcached
1 # kill `cat /tmp/memcached.pid`
也可以啟動多個守護進程,不過端口不能重復。
3.php中使用memcached
1.安裝php-pecl-memcached
1 yum -y install php-pecl-memcached 2 3 添加模塊到php 4 vim /etc/php.ini 5 添加 6 7 extension=memcached.so
看到這個,說明模塊安裝成功。
2.編寫測試php
1 <?php 2 $m = new Memcached(); 3 $m->addServer('localhost', 12000); 4 print_r($m->getVersion());
如果正常顯示版本號
Array ( [localhost:12000] => 1.4.35 )
則php連接memcached成功
如果顯示
Array ( [localhost:12000] => 255.255.255)
則連接失敗
解決方法:
第一,注意開啟memcached服務的時候 指定-u apache
第二,開啟了SeLinux
運行
1 /usr/sbin/setsebool httpd_can_network_connect=1
ok,可以正常使用了。
