memcached是一個簡單的、具有高度伸縮性的key-based快取,快取來源不受限制,他也是一個備份的RAM,可以讓應用程式進行非常快速地存取,要使用memcached,必須在一台或多台主機上執行memcached,再使用共享的快取儲存物件,因為每台主機都是使用RAM儲存資訊,存取的速度遠遠快過從硬碟上進行資訊的存取,這樣的話,相對於從資料庫存取資料,效能的增進是非常明顯的。快取只是容納資訊的空間,你可以在快取內儲存任何資料,如果儲存的是複雜的資料結構,可以在資料存進快取前,先進行複雜的資料庫操作,再將資料放進快取中,可以大幅減少mysql server的負擔。
使用memcached的一般性作法是修改應用程式,讓應用程式改為從memcached讀取資料,如果需要的資訊不在memcached裡頭,就會改由mysql讀取資料,再將資料寫入memcached裡頭,以後如果要存取相同資料,就可以發揮memcached的優勢。
memcached 安裝# apt-get install memcached
# service memcached start
這樣就裝好了~~
然後安裝 PHP的擴充套件
# pecl install memcache
# echo "extension=memcached.so" | tee /etc/php5/conf.d/memcached.ini
再來修改 PHP 設定檔# vi /etc/php5/fpm/php.ini
引用:
找到
session.save_handler = files
修改成
session.save_handler = memcache
session.save_path = "11.22.33.44:11211"
;11.22.33.44:11211 請自行修改成 memcached 的位置
設定完成後...nginx重啟就可以了
有空時用下述程式看看 memcache 狀態 即可.
# /usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 stats
# /usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 display
# /usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 dump
使用 PHP 看 memcache 狀態
引用:
<?php
$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
$stats = $memcache->getStats();
foreach ($stats as $key => $val) {
echo "$key : $val\n";
}
?>
整個就大功告成了~~