sudo apt-get install memcached
安裝完成自動啟動,佔用 11211 埠。手動啟動參數:
memcached -d -m 128 -p 11211 -u memcache
-m 最大記憶體 (MB),預設 64MB-c 最大同時連線,預設 1024-d start|restart|stop 服務控制sudo apt-get install php5-memcache
重啟 Web 伺服器後測試:
<?php
$mem = new Memcache;
$mem->connect("127.0.0.1", 11211);
$val = "這是一個 Memcache 測試.";
$key = md5($val);
if (($k = $mem->get($key))) {
echo 'from cache:' . $k;
} else {
echo 'normal';
$mem->set($key, $val, 0, 120); // 快取 120 秒
}
?>
預設 Session 存檔案系統,大流量時磁碟 IO 成瓶頸。改用 Memcache 可提升速度,多伺服器共享 Session 亦方便。
設定方式(三選一):
php.ini 全域:session.save_handler = memcache; session.save_path = "tcp://127.0.0.1:11211".htaccess:php_value session.save_handler "memcache" php_value session.save_path "tcp://127.0.0.1:11211"ini_set("session.save_handler", "memcache"); ini_set("session.save_path", "tcp://127.0.0.1:11211");多伺服器以逗號分隔,可帶 persistent、weight 等參數。
設定 ini_set('session.cookie_domain', 'yourdomain.com'); 使同一頂級域下所有子網域共享 Session ID,搭配共用 Memcache 即可實現跨網域 Session 共享。
希望本文能對 Ubuntu 平台上的 PHP 程式設計有所幫助。