我有2个Memcached服务器,比如serv1和serv2都能正常工作。
但是当我用它和Laravel Cache一起使用时,
当我使用serv1时,它可以正常工作。
但是当我把服务器换成serv2的时候。它不写Session
我一次只用1台服务器。我改变服务器的IP.
当我手动存储数据和检索数据的时候serv2可以正常工作, 只有当我和Laravel一起使用的时候才会出现问题.
两台服务器都安装了Memcached服务.
Laravel的代码不可能出错, 因为它在serv1上可以正常工作.
我似乎不知道问题出在哪里, 这个问题已经一个星期了.
Laravel版本是5.6. 操作系统是CentOs这是我的Laravel的Cache.php.
服务器在我的环境文件中
'memcached' => [
'driver' => 'memcached',
'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
'sasl' => [
env('MEMCACHED_USERNAME'),
env('MEMCACHED_PASSWORD'),
],
'options' => [
// Memcached::OPT_CONNECT_TIMEOUT => 2000,
],
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
我用serv2来存储vanilla PHP的session, 但工作正常.
Laravel使用Cache:put存储值到Cache, 但没有使用Session到serv2。
我把我的会话寿命改成300+就解决了,低于300就不能用了。
我不明白为什么同样的寿命,用serv1能用,而用serv2就不行?
我也看到两个memcached服务器上的时间是不同的。
我改变了时间,所以两个服务器有相同的,它开始工作。