php , php-fpm 使用 memcached,加速存取資料的速度

2016-05-09 CentOS, php

這幾天剛好實作了 memcached 在主線產品上,剛好記錄一下實作過程

memcached 是基於 NVP(Name-Value Pair) 分散式記憶體快取系統,被大量廣泛運用在線上環境,除了可以加快存取速度,還可以集中管理,避免主機異常而 session 遺失。

 

Memcached for PHP

Step.1 安裝 memcached

 

Step.2 設定 memcached

可以按照需求調整大小

 

Step.3 啟動 memcached

這樣就搞定 memcached 了,根本超簡單!版本 1.4.25,yum 有跟上最新版本的腳步哦!

 

Step.4 安裝 PHP memcached

yum 安裝的 php-pecl-memcached 是 2.2.0 版本的

 

Step.5 修改 php.ini

如果有集中管理 memcached server,請務必加入 persistent 參數,避免 session 存入失敗。

memcached 的設定檔在安裝 php-pecl-memcached 的時候就建立在 /etc/php.d/z-memcached.ini

 

 

Step.6 重新啟動 php-fpm 使其生效

 

驗證 memcached

  • TestCase 1

insert value to memcache

 

  • TestCase 2

verify phpinfo

 

用 memcached-tool 查看 memcached 狀態

 

 

Memcache for php-fpm

在預設 php-fpm 所提供的設定檔中 session.save_handler & session.save_path 是有自訂而且預設為 file,如果你有詳細在做 TestCase 的話,在 TestCase2 不管你怎麼測試都還會是使用 file,這邊必須將 php-fpm 的設定拿掉

在驗證一次 phpinfo 就可以看到正確的 memcached 設定!

 

 

此篇示範的是單機處理,當然最好的方式是採用集中 memcache server 的方式進行管理。

 

 

參考資料:

如何使用 memcached 做快取

php 使用 memcached 存取資料,在記憶體裡,加快速度

 

 

2 comments

  1. rpm -Uvh http://mirrors.kernel.org/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
    这个是64位的吧?我用的是32位的,可以给32位的吗?

    我也用CWP面板,但默认安装似乎没有PHP-FPM,请问如何在CWP启用PHP-FPM呢?

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

彙整

分類

open all | close all

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱