问题描述:
本地开发时,用到 redis,一个页面通过 redis 存储数据,另一个页面读取 redis 数据,但是一直读取不到,又不报错?
一句话总结下这个问题:
就是 redis 无法跨页面使用,又不报错。
问题根源:
调试发现,是配置文件内,把 redis 客户端参数配置为 mock,所以在使用 redis 时没有真正触发 predis,所以不报错。
普及一下 redis 客户端,php 的 redis 客户端有多个,官方推荐的主要有二个:Predis,phpredis。Predis 是PHP编写的,phpredis 是 c 语言写的 PHP 扩展,phpredis 性能上略胜于 Predis,性能上不必太关注,常见的业务量和计算机的运行能力可以排队对性能的担忧。
关于 laravel 内 redis 配置,涉及到的文件如下:
.env
REDIS_CLIENT=predis
......
......
REDIS_HOST=localhost
REDIS_PASSWORD=null
REDIS_PORT=6379
我就是因为把 predis 配置为 mock,所以才发生了跨页面访问不到数据的问题。
database.php
'redis' => [
'client' =