歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> 學習Linux >> Centos7下memcached的安裝和簡單使用

Centos7下memcached的安裝和簡單使用

日期:2017/3/6 9:45:55   编辑:學習Linux

Centos7下memcached的安裝和簡單使用


Centos7下memcached的安裝和簡單使用


前言:memcached的介紹

Memcached 是一個高性能的分布式內存對象緩存系統,用於動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提高動態、數據庫驅動網站的速度。Memcached基於一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,並通過memcached協議與守護進程通信。

對於強化版的memcached:Redis,在我的前兩篇博客有介紹到它的安裝和使用:Redis在Centos7上的安裝部署、Centos7下安裝php-redis擴展及簡單使用,如果大家想了解memcached和redis的異同和在什麼情況下我們應該怎麼選擇緩存系統,以下這篇博客相信對大家會有一個很好的啟發:緩存技術PK:選擇Memcached還是Redis?,感謝這篇博客的作者的精辟分析。

在本篇博客中,我會帶領大家在Centos7下安裝和使用memcached。

步驟一:memcached的安裝

memcached的安裝包括:1、服務端的安裝;2、客戶端的安裝

1、服務端的安裝:

在這裡,由於用編譯安裝memcached服務端過於復雜,因此我選用依賴管理工具 yum 來實現 memcached 的服務端安裝:

[root@localhost /]# yum install -y memcached

-y 表示自動應答,即默認安裝所有需要用到的依賴包

在這一步之後,我們就安裝完了。

我們嘗試去啟動一下memcached:

[root@localhost /]# /usr/bin/memcached -b -l 127.0.0.1 -p 11211 -m 150 -u root

-b 守護進程模式(退出終端窗口之後使程序還在運行),-l 指定IP地址127.0.0.1 ,-p 指定端口號11211,-m 為memcached分配多少內存(單位:M),-u 指定使用哪個用戶啟動memcached

查看memcached是否在運行:

[root@localhost /]# ps -ef | grep memcached//或[root@localhost /]# pstree -p | grep memcached

如果能夠看到存在memcached進程,那就說明我們的 memcached 服務端已經安裝成功了。

2、客戶端的安裝

客戶端的安裝又分為兩步:1、libmemcached 客戶端庫的安裝;2、為PHP安裝 php-memcached 擴展

現在我們先來下載後面安裝所需要的兩個安裝包

[root@localhost /]# cd /usr/local/src   #我的所有源碼包習慣放在該目錄下[root@localhost src]# wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz  #下載libmemcached源碼包[root@localhost src]# wget http://pecl.php.net/get/memcached-2.2.0.tgz  #下載memcached源碼包[root@localhost src]# lslibmemcached-1.0.18.tar.gz  memcached-2.2.0.tgz

1、libmemcached 客戶端庫的安裝:

首先解壓 libmemcached-1.0.18.tar.gz、配置

[root@localhost src]# tar -zxvf libmemcached-1.0.18.tar.gz[root@localhost src]# cd libmemcached-1.0.18/[root@localhost libmemcached-1.0.18]# ./configure --prefix=/usr/lib/libmemcached

–prefix 指定安裝目錄,該目錄我們後面會用到

編譯、安裝:

[root@localhost libmemcached-1.0.18]# make && make install

2、為PHP安裝 php-memcached 擴展

首先解壓 libmemcached-1.0.18.tar.gz、配置

[root@localhost libmemcached-1.0.18]# cd ..[root@localhost src]# tar -zxvf memcached-2.2.0.tgz[root@localhost src]# cd cd memcached-2.2.0

到了這一步,我們要使用安裝php時生成的 phpize 來生成 configure 配置文件

[root@localhost memcached-2.2.0]# /usr/local/php/bin/phpize (或 /usr/bin/phpize) //具體用哪個要取決於你的phpize文件所在的目錄,這時你應該用 whereis phpize 來查看路徑,如果php是默認安裝的話,直接使用phpize即可

配置

[root@localhost memcached-2.2.0]# ./configure -with-php-config=/usr/bin/php-config --with-libmemcached-dir=/usr/lib/libmemcached --disable-memcached-sasl

-with-php-config 指定 php-config,該文件與 phpize 所在目錄相同, –with-libmemcached-dir 指定 libmemcached 安裝目錄,就剛才我們 –prefix 那個目錄 ,–disable-memcached-sasl 說明我們系統不支持sasl.h

編譯、安裝

[root@localhost memcached-2.2.0]# make && make install

如果安裝成功,會提示:Installing shared extension:/usr/local/php/lib/extensions/no-debug-non-zts-20160524/ 等類信息

接下來,我們編輯php配置文件php.ini,你可以用 whereis php.ini 查看所在位置(我的在 /etc/php.ini ),把 php-memcached 擴展加到配置文件。

在 php.ini 中添加以下內容:

extension=memcached.so

步驟二:重啟apache服務器,使配置生效

[root@localhost memcached-2.2.0]# systemctl restart httpd.service

重啟完之後,檢查是否安裝完成php-memcached擴展

[root@localhost memcached-2.2.0]# echo "<?php echo phpinfo() ?>">>/home/www/index.php(這裡web目錄如果沒改的話是在 /var/www/html/)

在浏覽器地址欄輸入 127.0.0.1,查看php擴展,如果有以下圖片所示,則表示安裝成功:


當然,更方便的方法是用 php -m

上面都說明了我們已經成功的將 memcached 加入到 php 擴展中了

步驟三:使用 php 簡單操作 memcached

其實 memcached 和 redis 、MySQL是沒什麼兩樣,同是數據庫,(redis是非關系數據庫,mysql是關系數據庫),因此使用也是差不多的,同樣具有命令行使用和php操作使用,關於memcached的更多命令大家可以自行百度。

<?php    $m = new Memcached();//實例化Memcached類    $arr = array(        array('127.0.0.1',11211);    );    $m->addServers($arr);    $m->set('name','lsgogroup',3600);//設置緩存值,有效時間3600秒,如果有效時間設置為0,則表示該緩存值永久存在的(系統重啟前)    $m->get('name');//讀取緩存值    $m->delete('name');//刪除緩存值?>

redis命令遠不止上面所說的,這裡只做簡單的使用

本博客基本上是參考自慕課網:近距離探索memcache緩存,如果大家想比較詳細的了解安裝過程和使用memcached,可以去看這些視頻,相信大家會收獲匪淺。

http://xxxxxx/Linuxjc/1134318.html TechArticle

Copyright © Linux教程網 All Rights Reserved