1. 程式人生 > >近距離探索memcache緩存

近距離探索memcache緩存

dir utf8 不支持 efi 定期 fix pla 編譯安裝 永久


memcache介紹
  名字 類型 整理
  key vachar utf8_general_ci
  value text utf8_general_ci
使用場景
  非持久化存儲:對數據存儲要求不高
  分布式存儲:不適用單機
  key-value存儲:格式簡單,不支持list,array等數據格式
安裝
  方式
    編譯安裝:Libevent Memcache
    使用依賴管理工具yum、apt-get
    PS:memcache和memcached的區別
      memcached是memcache的升級版本
  過程
    壓縮包:libevent-1.2.tar.gz和memcached-1.2.0.tar.gz
    yum install memcached
    啟動:/usr/bin/memcached -d -l 127.0.0.1 -p 11211 -m 150 -u root
    查看是否啟動進程:ps -ef | grep memcached
  客戶端安裝:libmemcached-1.0.18.tar.gz memcached-2.2.0tgz
    安裝Libmemcached
      解壓libmemcached-1.0.18.tar.gz
      編譯安裝:./configure --prefix=/usr/lib/libmemcached
      make && make install
    為php安裝memcached擴展
      解壓memcached-2.2.0tgz
      phpize
      ./configure --with-php-config=/usr/local/(php-config所在目錄) --with-libmemcached-dir=/usr/...(libmemcached所在目錄)
      make && make install
      修改配置文件:extension=memcached.so
數據類型及使用


  系統類:
    addServer:添加服務器
    addServer:添加多臺服務器
    getStatus:查看服務器狀態
    getVersion:查看服務端版本號
  數據類:
    add(k,v,time) 新增數據,不會覆蓋 time為0代表永久生效
    set(k,v,time) 新增數據,沒有則創建,有則覆蓋
    delete(k) 刪除
    flush() 刪除所有
    replace()
    increment(k,num) 每次自增num
    decrement(k,num) 每次自減num
    get(k) 獲取數據
  進階類:
    setMulti(arr,time) 一次性添加多條
    deleteMulti(arr) 一次性刪除多條
    getMulti() 獲取多條
    getResultCode() 讀取操作編碼
    getResultMessage 讀取操作結果
封裝memcached類

  性能
    擴展性
    可調式
    盡量簡便的操作,一個方法多種功能
  結構
項目中使用memcached
  即時生成緩存
  提前生成緩存
  永久緩存
註意事項
  不要在單機模式中使用memcache
  不要只使用memcached保存重要數據
  定期查看緩存分布狀況和擊中情況

近距離探索memcache緩存