DedeCMS V5.7 memcache配置說明
時(shí)間: 2018-12-07 08:36
閱讀: 次
作者:素材無憂網(wǎng)
一、安裝Memcache服務(wù):
1.1.linux下的Memcache安裝:
-------------------------
1. 下載 memcache的linux版本,注意 memcached 用 libevent 來做事件驅(qū)動(dòng),所以要先安裝有 libevent。
2. 安裝 pecl::memcache。
用 pecl 命令行工具安裝:
pecl install memcache
或直接從源碼安裝:
phpize
./configure
make
make install
1.2.Windows下的Memcache安裝:
----------------------------
1. 下載memcache的windows穩(wěn)定版,解壓放某個(gè)盤下面,比如在c:\memcached
2. 在終端(也即cmd命令界面)下輸入 ‘c:\memcached\memcached.exe -d install’ 安裝
3. 再輸入: ‘c:\memcached\memcached.exe -d start’ 啟動(dòng)。NOTE: 以后memcached將作為windows的一個(gè)服務(wù)每次開機(jī)時(shí)自動(dòng)啟動(dòng)。這樣服務(wù)器端已經(jīng)安裝完畢了。
4.下載php_memcache.dll,請自己查找對(duì)應(yīng)的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
6.重新啟動(dòng)Apache,然后查看一下phpinfo,如果有memcache,那么就說明安裝成功!
memcached的基本設(shè)置:
-p 監(jiān)聽的端口
-l 連接的IP地址, 默認(rèn)是本機(jī)
-d start 啟動(dòng)memcached服務(wù)
-d restart 重起memcached服務(wù)
-d stop|shutdown 關(guān)閉正在運(yùn)行的memcached服務(wù)
-d install 安裝memcached服務(wù)
-d uninstall 卸載memcached服務(wù)
-u 以管理員的身份運(yùn)行 (僅在以root運(yùn)行的時(shí)候有效)
-m 最大內(nèi)存使用,單位MB。默認(rèn)64MB
-M 內(nèi)存耗盡時(shí)返回錯(cuò)誤,而不是刪除項(xiàng)
-c 最大同時(shí)連接數(shù),默認(rèn)是1024
-f 塊大小增長因子,默認(rèn)是1.25-n 最小分配空間,key+value+flags默認(rèn)是48
-h 顯示幫助
1.3.php.ini中的配置:
--------------------
[Memcache]
; 一個(gè)高性能的分布式的內(nèi)存對(duì)象緩存系統(tǒng),通過在內(nèi)存里維護(hù)一個(gè)統(tǒng)一的巨大的hash表,
; 它能夠用來存儲(chǔ)各種格式的數(shù)據(jù),包括圖像、視頻、文件以及數(shù)據(jù)庫檢索的結(jié)果等。
; 是否在遇到錯(cuò)誤時(shí)透明地向其他服務(wù)器進(jìn)行故障轉(zhuǎn)移。
memcache.allow_failover = On
; 接受和發(fā)送數(shù)據(jù)時(shí)最多嘗試多少個(gè)服務(wù)器,只在打開memcache.allow_failover時(shí)有效。memcache.max_failover_attempts = 20
; 數(shù)據(jù)將按照此值設(shè)定的塊大小進(jìn)行轉(zhuǎn)移。此值越小所需的額外網(wǎng)絡(luò)傳輸越多。
; 如果發(fā)現(xiàn)無法解釋的速度降低,可以嘗試將此值增加到32768。
memcache.chunk_size = 8192
; 連接到memcached服務(wù)器時(shí)使用的默認(rèn)TCP端口。
memcache.default_port = 11211
; 控制將key映射到server的策略。默認(rèn)值"standard"表示使用先前版本的老hash策略。
; 設(shè)為"consistent"可以允許在連接池中添加/刪除服務(wù)器時(shí)不必重新計(jì)算key與server之間的映射關(guān)系。
;memcache.hash_strategy = "standard"; 控制將key映射到server的散列函數(shù)。默認(rèn)值"crc32"使用CRC32算法,而"fnv"則表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = "crc32"
;memcache也可以作為session的存儲(chǔ)模塊,具體參看:memcache PHP 的 session.save_handler.
二、DedeCMS后臺(tái)設(shè)置
進(jìn)入系統(tǒng)后臺(tái),在[系統(tǒng)基本參數(shù)]下面的"性能選項(xiàng)"卡當(dāng)中,關(guān)于memcache進(jìn)行如下配置:
cfg_memcache_enable : 是否啟用memcache緩存,如果為否(N),默認(rèn)使用文件緩存;
這個(gè)選項(xiàng)設(shè)置為開啟:Y
cfg_memcache_mc_defa : 默認(rèn)memcache緩存服務(wù)器地址;
這個(gè)選項(xiàng)中填入服務(wù)器地址:memcache://127.0.0.1:11211/default127
cfg_memcache_mc_oth : 附加memcache緩存服務(wù)器地址;
這個(gè)如果沒有可以為空.
三、設(shè)定緩存時(shí)間
cfg_puccache_time : 需緩存內(nèi)容全局緩存時(shí)間(秒),這個(gè)里面需要設(shè)定緩存周期,默認(rèn)為36000秒
四、Memcache的分布式應(yīng)用
* memcache適合與web server安裝在同一server上
* memcache可以在n個(gè)端口開n個(gè)進(jìn)程,如果和web server在同一機(jī)器的話,還能減少網(wǎng)絡(luò)開銷.
* 配置簡單,啟動(dòng)一個(gè)進(jìn)程就行了,免去了配置文件
五、DedeCMS緩存函數(shù)開發(fā)說明
由于封裝成小助手的形式,所以在使用的時(shí)候先初始化:
helper('cache');
幾個(gè)簡單的方法:
SetCache() 設(shè)定緩存信息
GetCache() 獲取緩存內(nèi)容
DelCache() 刪除緩存內(nèi)容,簡單的使用例子如:
$rs = GetCache('memberlogin', $mid);
if( empty($rs) )
{
$rs = $dsql->GetOne("SELECT * FROM `member` WHERE mid='{$mid}' ");
SetCache('memberlogin', $mid, $rs, 1800);
}
六、參考網(wǎng)站
memcached官網(wǎng):
php的memcache配置大全:
版權(quán)聲明:
本站資源均來自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明:
DedeCMS V5.7 memcache配置說明
標(biāo)簽: