使用Memcached緩存實(shí)現(xiàn)Session共享技巧
使用 Memcached 實(shí)現(xiàn) Session 共享

應(yīng)用場景
當(dāng)有很多用戶的時(shí)候,這些用戶的登錄位置在各個(gè)不同的服務(wù)器上,因?yàn)?session 是生成在服務(wù)器上的,當(dāng)用戶互訪的時(shí)候,有的時(shí)候發(fā)現(xiàn)自己有權(quán)限,有時(shí)候發(fā)現(xiàn)自己沒有權(quán)限。因?yàn)榫彺媸羌惺降模械木彺娑荚谝黄?,那么就可以?session 放到 memcached 緩存中。所有服務(wù)器都可以在公用的服務(wù)器上面來取 session,這樣無論用戶在哪一臺服務(wù)器上面登錄,都有正確的 session。這樣的話,有兩個(gè)優(yōu)點(diǎn),第一,解決了 session 共享的問題。第二,當(dāng)用戶量很大的時(shí)候,session 是存放在服務(wù)器上面的,因此就會增加了磁盤的 IO,但是如果放在緩存中,性質(zhì)則完全不一樣。
實(shí)現(xiàn)方式
設(shè)置 php.ini 配置文件
vim /etc/php/7.2/fpm/php.ini
- 將 seesion 存儲方式改為 memcached
默認(rèn) php 是以文件的形式存放 session 的
session.save_handler = files
因此需要修改成 memcached
session.save_handler = "memcached"
- 修改 session 存放位置
默認(rèn) php 注釋掉了
session.save_path = "/var/lib/php/sessions"
修改為
注意:192.168.174.128 是我虛擬機(jī)的 ip 地址,這里需要修改成你 memcached 服務(wù)器的 ip 地址
# 對于 php 5.6 及以下,需要寫成如下 session.save_path = "tcp://192.168.174.128:11211" # 對于 php 7 以上可以直接寫成 session.save_path = "192.168.174.128:11211"
如果只想單個(gè) php 文件,取 session 的時(shí)候直接取緩存中取的話,可以如下設(shè)置
vim test.php
<?php
ini_set("session.save_hander", "memcached");
ini_set("session.save_path", "192.168.174.128:11211");另外還可以采用 apache 或者 nginx 的方式設(shè)置
將 session 放到 memcached 中的缺點(diǎn):
集群錯(cuò)誤會導(dǎo)致用戶無法登陸、memcached 的回收機(jī)制可能會導(dǎo)致用戶掉線
以上就是使用Memcached緩存實(shí)現(xiàn)Session共享技巧的詳細(xì)內(nèi)容,更多關(guān)于Memcached Session共享的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
PHP配合fiddler抓包抓取微信指數(shù)小程序數(shù)據(jù)的實(shí)現(xiàn)方法分析
這篇文章主要介紹了PHP配合fiddler抓包抓取微信指數(shù)小程序數(shù)據(jù)的實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了PHP結(jié)合fiddler抓取微信指數(shù)小程序數(shù)據(jù)的相關(guān)原理與實(shí)現(xiàn)方法,需要的朋友可以參考下2020-01-01
php實(shí)現(xiàn)保存submit內(nèi)容之后禁止刷新
這篇文章主要介紹了php保存submit內(nèi)容之后禁止刷新的具體實(shí)現(xiàn),需要的朋友可以參考下2014-03-03
php實(shí)現(xiàn)的mysqldb讀寫分離操作類示例
這篇文章主要介紹了php實(shí)現(xiàn)的mysqldb讀寫分離操作類,結(jié)合實(shí)例形式分析了php針對數(shù)據(jù)庫的讀寫分離操作實(shí)現(xiàn)技巧,并給出了該封裝類的具體使用方法,需要的朋友可以參考下2017-02-02
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安裝配置方法
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安裝配置方法...2007-05-05
利用PHPExcel讀取Excel的數(shù)據(jù)和導(dǎo)出數(shù)據(jù)到Excel
本篇文章主要介紹了利用PHPExcel讀取Excel的數(shù)據(jù)和導(dǎo)出數(shù)據(jù)到Excel的相關(guān)知識,具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-05-05

