PHP5.4版本memcache擴展dll文件ts版本,memcache是比較流行的cache解決方案,是高效、快速的分布式內存對象緩存系統,主要用于加速 WEB 動態應用程序
Windows下的Memcache安裝 :
1. 解壓附件中的Memcache.rar放某個盤下面,比如在c:\memcached
2. 在終端(也即cmd命令界面)下輸入 ‘c:\memcached\memcached.exe -d install’ 安裝[此處路徑為你的memcached的存放路徑]
3. 再輸入: ‘c:\memcached\memcached.exe -d start’ 啟動。NOTE: 以后memcached將作為windows的一個服務每次開機時自動啟動。這樣服務器端已經安裝完畢了。
4.下載php_memcache.dll ,請自己查找對應的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’[dll文件夾內有php5.2和php5.3的php_memcache.dll]
6.將對應的dll文件拷貝到php安裝目錄的ext文件夾內
6.重新啟動Apache或iis,然后查看一下phpinfo,如果有memcache,那么就說明安裝成功!
memcached常用方法介紹
Memcache::connect() — 創建一個Memcache對象
Memcache::pconnect() — 創建一個Memcache的持久連接對象
Memcache::flush() — 清除所有緩存的數據,但是不會削去使用的內存空間。
Memcache::close() — 關閉一個Memcache對象
memcache_debug() — 控制調試功能,前提是php在編譯的時候使用了–enable-debug選項,否則這個函數不會有作用。
Memcache::addServer() — 添加一個可供使用的服務器地址。該方法有8個參數,除了第一個參數以外,其他都是可選的,第一個參數表示服務器的地址,第二個參數表示端口,第三個參數表 示是否是一個持久連接,第四個參數表示這臺服務器在所有服務器中所占的權重,第五個參數表示連接的持續時間,第六個參數表示連接重試的間隔時間,默認為 15,設置為-1表示不進行重試,第七個參數用來控制服務器的在線狀態,第8個參數允許設置一個回掉函數來處理錯誤信息。
Memcache::add() — 添加一個值,如果已經存在,則返回false
Memcache::set() — 添加一個值,如果已經存在,則覆寫。 該方法有四個參數,第一個參數是key,第二個參數是value,第三個參數可選,表示是否壓縮保存, 第四個參數可選,用來設置一個過期自動銷毀的時間。
Memcache::get() — 獲取一個key值。該方法有一個參數,表示key
Memcache::replace() — 對一個已有的key進行覆寫操作。該方法有四個參數,作用和Memcache::set()方法的相同。
Memcache::increment() — 對保存的某個key中的值進行加法操作
Memcache::decrement() — 對保存的某個key中的值進行減法操作
Memcache::delete() — 刪除一個key值。該方法有兩個參數,第一個參數表示key,第二個參數可選,表示刪除延遲的時間。
Memcache::getExtendedStats() — 獲取進程池中所有進程的運行系統統計
Memcache::getServerStatus() — 獲取運行服務器的參數。兩個參數分別表示的地址和端口
Memcache::getStats() — 返回服務器的一些運行統計信息。此方法有三個參數,第一個參數表示要求返回的類型:reset, malloc, maps, cachedump, slabs, items, sizes;第二個參數和第三個參數是在第一個參數設置為“cachedump”時使用的。
Memcache::getVersion() — 返回運行的Memcache的版本信息
Memcache::setCompressThreshold() — 對大于某一大小的數據進行壓縮。該方法有兩個參數,第一個參數表示處理數據大小的臨界點,第二個參數表示壓縮的比例,默認為0.2。
Memcache::setServerParams() — 在運行時修改服務器的參數。相對Memcache::addServer()方法少了第三和第四個參數
說明:
Memcache::add()方法的作用和Memcache::set()方法類似,區別是如果 Memcache::add方法的返回值為false,表示這個key已經存在,而Memcache::set方法則會直接覆寫。
四、php.ini中Memcache的配置
[Memcache]
; 一個高性能的分布式的內存對象緩存系統,通過在內存里維護一個統一的巨大的hash表,
; 它能夠用來存儲各種格式的數據,包括圖像、視頻、文件以及數據庫檢索的結果等。
; 是否在遇到錯誤時透明地向其他服務器進行故障轉移。
memcache.allow_failover = On
; 接受和發送數據時最多嘗試多少個服務器,只在打開memcache.allow_failover時有效。
memcache.max_failover_attempts = 20
; 數據將按照此值設定的塊大小進行轉移。此值越小所需的額外網絡傳輸越多。
; 如果發現無法解釋的速度降低,可以嘗試將此值增加到32768。
memcache.chunk_size = 8192
; 連接到memcached服務器時使用的默認TCP端口。
memcache.default_port = 11211
; 控制將key映射到server的策略。默認值"standard"表示使用先前版本的老hash策略。
; 設為"consistent"可以允許在連接池中添加/刪除服務器時不必重新計算key與server之間的映射關系。
;memcache.hash_strategy = "standard"
; 控制將key映射到server的散列函數。默認值"crc32"使用CRC32算法,而"fnv"則表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = "crc32"
;memcache也可以作為session的存儲模塊,具體參看:memcache PHP 的 session.save_handler.
-p 監聽的端口
-l 連接的IP地址, 默認是本機
-d start 啟動memcached服務
-d restart 重起memcached服務
-d stop|shutdown 關閉正在運行的memcached服務
-d install 安裝memcached服務
-d uninstall 卸載memcached服務
-u 以的身份運行 (僅在以root運行的時候有效)
-m 最大內存使用,單位MB。默認64MB
-M 內存耗盡時返回錯誤,而不是刪除項
-c 最大同時連接數,默認是1024
-f 塊大小增長因子,默認是1.25
-n 最小分配空間,key+value+flags默認是48
-h 顯示幫助