Redis 缓存 PHP 7.2 session 变量共享

Crq
Crq
管理员
1369
文章
0
粉丝
Linux教程评论38字数 455阅读1分31秒阅读模式

Redis 缓存 PHP 7.2 session 变量共享

一般负载均衡内容有两种形式,一种是静态,另一种是动态,动态网站内容就可能需要进行交互,那么就涉及到session共享的问题。默认PHP是将session存储在LocalDisk,如果是多台php主机之间进行负载,那么该如何共享session?今天我们就解决这个问题。

session会话共享文件有很多种方式:

分布式文件共享;NFS,NAS文件存储等。

Nginx负载均衡ip_hash模块,固定访客到后端某台服务器。

将session存储到数据库中;例如MySQL,Memcached,Redis,Mongodb等。

我个人比较倾向于将session存储到Redis数据库,用这种方式来同步session共享,不仅不会加大数据库的负担,而且安全性比cookie更高,把session放到内存里面,比从磁盘文件中读取会快很多。“有人认为;那我把所有的缓存软件都安装,速度岂不是更快,那就不是缓存加速了,而演变成了缓存库了”。

php语言脚本默认不支持对Redis的操作,所以需要安装第三方phpRedis扩展模块,让其支持对Redis的操作,至于如何安装使用phpRedis,可以参考我前面写的文章《phpRedis扩展模块安装配置使用》。此外这里还需要一台Redis服务器,请参阅《Linux Centos7 Redis 3.2.9 源码编译安装配置》。

1.修改PHP配置文件php.ini将session存储到Redis中。

# vim /usr/local/php/etc/php.ini
session.save_handler = files
;session.save_path = "N;/path"
修改为:
session.save_handler = Redis
session.save_path = “tcp://10.10.204.66:6379”
;如果Redis有密码连接方式
session.save_path = “tcp://10.10.204.66:6379?auth=password”
 

2.重启php-fpm服务生效

# systemctl restart php-fpm

以上所有过程均是经过手工测试的,99%可用于生产。

weinxin
我的微信
微信号已复制
我的微信
这是我的微信扫一扫
 
Crq
  • 本文由 Crq 发表于2024年9月2日 04:55:11
  • 转载请注明:https://www.cncrq.com/10601.html
安装WAS8随记 Linux教程

安装WAS8随记

笔者这里IBM Install Manager安装包的解压路径为/mnt/hgfs/vm10linuxshare/ibminstallerlinux。在root用户下执行/mnt/...
Tomcat7安装基于jdk 1.7环境 Linux教程

Tomcat7安装基于jdk 1.7环境

这篇文章着重讲解tomcat7的安装,首先需要下载tomcat包和相应的jdk,如果你的系统是32位,那么下载x86的jdk,如果是64位的系统,那么下载X64的JDK。
如何降级 WordPress 到旧版本 Linux教程

如何降级 WordPress 到旧版本

我们都知道,每当WordPress有新本的时候,我们都可以在后台一键更新。但是有些时候,我们的主题或插件可能不兼容新版本的WP,这时候我们如果要降级为之前的旧版本,该怎么操作呢?下...
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证