memcached 是基於 NVP(Name-Value Pair) 分散式記憶體快取系統,被大量廣泛運用在線上環境,除了可以加快存取速度,還可以集中管理,避免主機異常而 session 遺失。
Memcached for PHP
Step.1 安裝 memcached
$ rpm -Uvh http://mirrors.kernel.org/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
$ yum install memcached
Step.2 設定 memcached
PORT="11211"
USER="memcached"
MAXCONN="2048"
CACHESIZE="64"
OPTIONS=""
可以按照需求調整大小
Step.3 啟動 memcached
$ chkconfig memcached on
$ service memcached start
這樣就搞定 memcached 了,根本超簡單!版本 1.4.25,yum 有跟上最新版本的腳步哦!
Step.4 安裝 PHP memcached
$ yum install zlib-devel libmemcached-devel php-pear php-devel gcc gcc-c++ php php-mbstring php-mysql php-pecl-memcached
yum 安裝的 php-pecl-memcached 是 2.2.0 版本的
Step.5 修改 php.ini
session.save_handler = memcached
session.save_path = "localhost:11211"
memcached 的設定檔在安裝 php-pecl-memcached 的時候就建立在 /etc/php.d/z-memcached.ini
Step.6 重新啟動 Web & php-fpm 使其生效
$ service nginx reload
$ service php-fpm reload
驗證 memcached
$ vim memcached.php
<?php
$memcache = new memcached();
$memcache->addServer('127.0.0.1', 11211);
$memcache->set('memcached','insert memcached finisd!');
echo $memcache->get('memcached');
?>
$ php -f memcached.php
insert memcached finisd!
查看 memcached 狀態
$ mymcached-tool localhost:11211 stats
此篇示範的是單機處理,當然最好的方式是採用集中 memcache server 的方式進行管理。
參考資料:
如何使用 memcached 做快取
php 使用 memcached 存取資料,在記憶體裡,加快速度
Orignal From: php 使用 memcached,加速存取資料的速度
沒有留言:
張貼留言