本文實例講述了Linux下安裝Memcached服務器和客戶端與php使用。分享給大家供大家參考,具體如下:
Memcached是高性能的分布式內存緩存服務器,通過緩存數據庫查詢結果,減少數據庫訪問次數,以提高動態Web應用的速度和可擴展性。
系統環境:CentOS 7.2 64位 Apache2.4.33
安裝libevent依賴庫
wget https://github.com/downloads/libevent/libevent/libevent-2.0.15-stable.tar.gztar -zxvf libevent-2.0.15-stable.tar.gzcd libevent-2.0.15-stable./configure --prefix=/usr/localmakesudo make install
安裝Memcached服務器
wget http://memcached.googlecode.com/files/memcached-1.4.9.tar.gztar -zxvf memcached-1.4.9.tar.gzcd memcached-1.4.9./configure --prefix=/usr/local/memcachedmakesudo make install
啟動Memcache服務器:
/usr/local/memcached/bin/memcached -d -m 128 -u root -p 11211
安裝Memcached客戶端
wget http://pecl.php.net/get/memcache-2.2.5.tgztar -zxvf memcache-2.2.5.tgzcd memcache-2.2.5./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dirmakesudo make install
【make報錯: *** [memcache.lo] Error 1】解決方法:
進入memcache安裝目錄,找到mamcache.c文件,將所有的zend_list_insert加上TSRMLS_CC,形如:zend_list_insert(pool, le_memcache_pool TSRMLS_CC);
客戶端安裝好之后,我們發現PHP擴展庫中多了一個memcache.so
在PHP配置文件php.ini中加入該擴展:
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
重啟服務器,通過輸出phpinfo()查看該擴展相關信息
下面寫一個簡單的例子,實現memcache擴展與Memcached服務器的交互
<?php $mc = new Memcache(); //創建Memcache對象 $mc->connect("127.0.0.1", 11211); //連接Memcached服務器 $mc->set('test','hello world',0,10); //存儲數據 echo $mc->get('test'); //獲取數據 $mc->delete('test'); //刪除數據 $mc->flush(); //強制刷新全部緩存,即清空Memcached服務器 $mc->close(); //斷開與Memcached服務器的連接
希望本文所述對大家PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選