[精讚] [會員登入]
1968

[PHP7] 利用Memcached 儲存 Session

Memcached+ PHP7,利用Memcached 儲存 Session。

分享此文連結 //n.sfs.tw/11138

分享連結 [PHP7] 利用Memcached 儲存 Session@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-23 08:05:11 最後編修
2017-05-25 01:38:36 By 張○○
 

自動目錄

PHP7安裝memcached,提升網頁速度

OS

CentOS Linux release 7.3.1611 (Core)

PHP 7.0.18 (cli) (built: Apr 15 2017 07:09:11) ( NTS )

安裝

# yum install epel-release

# yum install memcached

# yum install php70w-pecl-memcached

完裝完畢後會多一個檔案:

/etc/php.d/z-memcached.ini

設定

vi /etc/sysconfig/memcached

PORT="11211"
USER="memcached"
MAXCONN="3000"
CACHESIZE="200"
OPTIONS="-l 127.0.0.1"

第3行最大連線數;

第4行記憶體大小,單位是mb

第5行限定監聽介面,若留空就全部介面

# vi /etc/php.ini

session.save_handler = memcached
session.save_path = "127.0.0.1:11211"

啟動

# systemctl start memcached

# systemctl restart httpd

檢查php模組
# php -m | grep memcached
memcached <一片空白代表你沒裝好>

查看Memcached狀態

物件清單
# memcached-tool 127.0.0.1:11211

# memcached-tool 127.0.0.1:11211 display

統計資料
# memcached-tool 127.0.0.1:11211 stats

物件內容
# memcached-tool 127.0.0.1:11211 dump

其他

1. 設定開機啟動

systemctl enable memcached

2. PHP的session原本存在 /var/lib/php/session/ 改成 memcached後就不會再存於此

3. 重啟 apache不會清除資料,但重啟memcached會。

4. Codeigniter3 在PHP7使用memcached會遇到問題,目前尚無法解決(只能關掉錯誤)

$ vi application/config/config.php

$config['sess_driver'] = 'memcached';  //files
$config['sess_save_path'] = '127.0.0.1:11211'; //NULL;

A PHP Error was encountered

Severity: Warning

Message: Memcached::touch(): using touch command with binary protocol is not recommended with libmemcached versions below 1.0.18, please use ascii protocol or upgrade libmemcached

Filename: drivers/Session_memcached_driver.php

參考資料

[1] https://ssorc.tw/5965

[2] https://www.cyberciti.biz/faq/rhel-fedora-linux-install-memcached-caching-system-rpm/

[3] http://php.net/manual/en/memcached.sessions.php#99646

[4] https://blog.longwin.com.tw/2010/04/use-memcached-store-php-session-2010/

 

 

END

你可能感興趣的文章

[CodeIgniter3] CI3 Session 失敗的問題 這次把我的程式放到Centos8,結果sesssion 一直沒作用,真的不知道發生了什麼事?

[CodeIgniter 3] 自寫找不到頁面(page404)的方法 使用CI3框架中如果找不到頁面,就會導到一個自定的404頁面,該怎麼做?

PHP 產生連續的日期 要用PHP產生連續的日期,連續月份

[PHP] 使用FTP PHP 上使用 FTP 的寫法

[CodeIgniter 3] 資料庫的使用方法整理2/2 CI3 承襲 CI2,有很多的builder class可以用,依各人的使用習慣,有人喜歡一堆sql字串,有人喜歡用helper

[PHP7] 利用Memcached 儲存 Session Memcached+ PHP7,利用Memcached 儲存 Session。

隨機好文

一個邏輯的錯誤刪了全部檔案的經驗 今天本來想做一件很簡單的事,但卻足足浪費我多一倍的時間,再加上刪掉我全部的檔案,原因只是因為我自己的邏輯錯誤。

海棉寶寶超泡杯演奏的sweet victory 章魚哥和海棉寶寶在超泡杯的演奏歌曲

對物品的感情 這個議題很奇怪,可是大部分的人都會有,物品是死的,壞了就淘汰,出新的就被替換。為何會有情感?

關閉瀏覽器表單的自動完成autocomplete 什麼是自動完成?就是當我們在網頁的輸入文字欄位中打入文字時,瀏覽器會把曾輸入過歷史記錄中找出來讓我們選擇。

[MYSQL] 設定字串欄位的預設值 新增表格的時候,字串欄位給予預設空值;數字欄位給預設數值;日期欄位給空值。