session 和 cache 能不能使用不用的driver

想把 session 和 cache 使用两个不同的memcache, 不知道可否设置,
如果只能使用相同的driver 使用 php artisan cache:clear 清除cache 会不会影响session
已邀请:

FiveSay - 成武

赞同来自: 安正超 webclz

1、session 和 cache 可以使用不用的驱动,但同为 memcache 驱动时,则会统一调用 /app/config/cache.php 文件中 memcached 设置的服务器。
具体产生调用的位置在 /vendor/laravel/framework/src/Illuminate/Session/SessionManager.php:164
1.jpg


2、通常情况下使用 php artisan cache:clear 清除 cache 并不会影响 session,但同为 memcache 驱动时,则会直接导致 session 被清除
具体可以查看命令对应文件 /vendor/laravel/framework/src/Illuminate/Cache/Console/ClearCommand.php:57
11.jpg

在这里实际调用的是
22.jpg

然而,最终还是调用到了原生的 Memcache::flush,导致 session 直接被无差别抹杀了!

今天特地在 laravel/homestead 下做了测试,证实了上面推论。

要回复问题请先登录注册