redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享

服务器环境:win10 php7 apache2.0 redis

框架:thinkphp5

实现:thinkphp5 + redis + session 入库

1.安装成功redis 服务器,已经安装成功,测试也成功

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第1张图片

(redis服务器版本)

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第2张图片

(php版本)

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第3张图片

21a185bd1ab5db25c6a83b05de56e172.png

(thinkphp5 session 配置 redis驱动)

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第4张图片

(thinkphp5 redis 驱动 位置)

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第5张图片

(测试驱动)

ini_set('session.save_handler', 'redis');

ini_set('session.save_path', 'tcp://127.0.0.1:6379');

session('openid', '123456'); //设置session

echo '设置session-->' . session('openid') . '';

(测试结果)

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第6张图片

如果相关木有写入到redis 报如下错误

saving:Permission denied.

Background saving error

是因为先关写入权限问题

排查 redis写入权限木有,导致不能写入到本地

修改权限如下,可以。

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第7张图片

也可能缺少该del

43b4a9cc41aac6c4da1728ee2d0d4dc6.png

问题解决执行相关操作 redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第8张图片

最好贴上相关代码:

$redis = new \Redis();

$rediscon=$redis->connect('127.0.0.1', 6379);

if($rediscon){

echo "Connection to server sucessfully.连接redis服务器成功";

}else{

echo "Connection to server fail.连接redis服务器失败";

}

echo $redis->get($_COOKIE['PHPSESSID']);

}

运行结果

redis分布式缓存php,Thinkphp5 Redis 分布式缓存 SESSION 实时共享_第9张图片

终于成功写入和读取到。配合redis session入库。减少mysql相关操作。可以实现分布式数据库处理、达到session共享。

你可能感兴趣的:(redis分布式缓存php)