memcached詳解

一、memcached簡介

1.memcached是緩存服務器,也可以說是提供緩存功能的服務器,由前端程序來決定是否需要緩存。

前端程序收到請求後,把請求內容轉發給後端服務(mysql,fastcgi等),服務將請求內容提供給前端應用後決定是否需要將其緩存至memcached。

2.memcached監聽在tcp/udp的11211端口。

3.memcached程序依賴於libevent,yum安裝不需要考慮依賴。http://memcached.org提供源碼包

4.安裝方式有epel源的rpm包,紅帽6.4以後自帶的yum源及編譯安裝。


二、memcached編譯安裝

  1. 下載memcacched-1.4.15.tar.gz    libevent-2.0.21-stable.tar.gz

  2. 先安裝libevent,tar xf libevent-2.0.21-stable.tar.gz;

  3. cd libevent-2.0.21

  4. ./configure --prefix=/usr/local/libevent

  5. make && make install

  6. ln -sv /usr/local/libevent/include /usr/include/libevent

  7. vim /etc/ld.so.conf.d/libevent.conf

    /usr/local/libevent/lib   #添加頭文件

  8. ldconfig  #重新導出


  9. tar xf memcached-1.4.15.tar.gz

  10. cd memcached-1.4.15

  11. ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent

  12. make && make install


三、啓動memcached

  1. /usr/local/memcached/bin/memcached 

  2. 添加sysV腳本 vim /etc/rc.d/init.d/memcached

  3. chmod +x /etc/rc.d/init.d/memcached

  4. chkconfig --add memcached

  5. service memcached start

  6. ss -tuanl | grep 11211  #查看服務啓動

注:可以使用memcached的選項來啓動  ./memcached -d -m 2048 -l 127.0.0.1 -p 11211


四、memcached使用

  1. memcached命令選項

    -p:指定tcp監聽端口  默認11211

    -U:指定udp監聽端口  默認11211

    -u:指定用戶名

    -f:設定增長因子

    -l:指定監聽的ip地址

    -d:以守護進程方式運行

    -m:最大使用內存

    -c:最大允許的鏈接個數,通常默認1024

    -v:顯示詳細信息

    -vv

    -vvv

2.memcached交互命令,參數

    存儲類命令:set, add, replace, append, prepend

    獲取數據類命令:get, delete, incr/decr

    統計類命令:stats, stats items, stats slabs, stats sizes

    清理命令:flush_all

  參數:key flags "expiration time" bytes

        value

3.簡單命令使用示例:

    telnet 127.0.0.1 11211   #使用telnet鏈接memcached

    set mykey 0 0 5   #在緩存中添加一個鍵值對,鍵爲mykey,過期時間爲0

    abced             #值爲abced

    STORED            #set可以添加鍵值對和修改值


    add seckey 0 0 5  #add僅用作添加新的鍵值對

    12345             #值

    STORED


    get mykey         #讀取mykey的緩存

    VALUE mykey 0 5

    abced

    END


    replace key N N N  #當鍵存在時替換緩存中的值,如果鍵不存在則不生效

    delete keyname     #刪除值


注:php加載memcached需要memcache模塊,添加依賴路徑,--enabled-memcache即可


五、管理工具memadmin,libmemcached/ 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章