本文實例講述了PHP實現分布式memcache設置web集群session同步的方法。
php的session默認是文件存儲:
session.save_handler = filessession.save_path = /var/lib/php/session
當做web集群,需要session同步時,將session存到分布式memcache來達到共享同步是個不錯的辦法
方法:
第1種:
vi /etc/php.ini
session.save_handler = memcachesession.save_path = tcp://192.168.20.193:11211,tcp://192.168.20.194:11211
第2種:
在php文件中使用ini_set函數進行配置,適合無法修改配置文件的html' target='_blank'>虛擬主機
?phpini_set( session.save_handler , memcache ini_set( session.save_path , tcp://192.168.20.193:11211,tcp://192.168.20.194:11211 ?
重啟web服務器
service httpd restart
查看phpinfo
測試
192.168.20.193中的login.php
?phpsession_start();$_SESSION[ login_time ] = time();$_SESSION[ username ] = test2 $token=session_id();echo $token;//memache實現$mem = new Memcache();$mem- addServer( 192.168.20.193 ,11211);$mem- addServer( 192.168.20.194 ,11211);//memached實現$mem = new Memcached();$servers = array( array( 192.168.20.193 , 11211, 33), array( 192.168.20.194 , 11211, 67)$mem- addServers($servers);echo hr print_r($mem- get($token)); a href= http://192.168.20.194/user.php?token= ?php echo $token;? rel= external nofollow target= _balnk 跳轉到194網站的個人中心 /a /p
192.168.20.194中的user.php
?php$mem = new Memcache();$mem- addServer( 192.168.20.193 ,11211);$mem- addServer( 192.168.20.194 ,11211);$token=$_GET[ token //獲取傳過來的tokenprint_r($mem- get($token)); a href= http://192.168.20.193/user.php?token= ?php echo $token;? rel= external nofollow target= _balnk 返回193網站的個人中心 /a /p您可能感興趣的文章:
PHP實現的大文件切割與合并功能示例講解
PHP實現的簡單組詞算法示例講解
PHP實現的mongoDB數據庫操作類完整實例講解
以上就是PHP實現分布式memcache設置web集群session同步的方法詳解的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答