php - (php) 我们应该为基于 Redis 的 session 处理使用垃圾收集器吗?

标签 php redis

我已设置使用 REDIS 作为我的 PHP session 处理程序。 与 REDIS 一起使用时似乎存在 session 过期问题。我对么?或者每个 redis 键的 ttl 生命周期本身处理 session 的到期?

我使用的只是将处理程序设置为使用 REDIS。此外,如果 session 处理程序发生更改,PHP 似乎不会处理垃圾回收。

最佳答案

据我所知,使用 Redis 时不需要 session 垃圾回收。每个 key 都有自己的 TTL,您可以使用 TTL 检查命令。在我的开发环境中,我将 session 处理程序设置为 redis,然后访问我的测试站点。当我运行 KEYS * ,我得到了 session 的 key 。然后我运行 TLL "PHPREDIS_SESSION:<session key>我得到了收集 session 之前的剩余时间。

您可以使用非常短的 gc_maxlifetime 值自行测试。例如 15。

127.0.0.1:6379> KEYS *
1) "PHPREDIS_SESSION:otgaqapormlo7l0pjpl6v7upq1"
127.0.0.1:6379> TTL "PHPREDIS_SESSION:otgaqapormlo7l0pjpl6v7upq1"
(integer) 6
127.0.0.1:6379> TTL "PHPREDIS_SESSION:otgaqapormlo7l0pjpl6v7upq1"
(integer) 1
127.0.0.1:6379> TTL "PHPREDIS_SESSION:otgaqapormlo7l0pjpl6v7upq1"
(integer) -2
127.0.0.1:6379> KEYS *
(empty list or set)

关于php - (php) 我们应该为基于 Redis 的 session 处理使用垃圾收集器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50834451/

相关文章:

php:Mysql:题库数据库设计

javascript - 如何使用 php 将网络摄像头捕获的图像存储在指定文件夹中,并将捕获的图像路径存储在 mysql 数据库中?

php - 从 clumon ""中选择结果并加入另一个表

redis - 我应该如何在 Redis 中对此进行建模?

php - 尽管使用 --tries,Laravel 队列不会自动失败

Redis cli删除多个key

javascript - PHP 解析 JavaScript

php - 在对象数组上使用 php 的 array_search

go - 如何使用redis georadius命令golang

python - 无法连接到Redis容器