PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

运维 - PHP使用memcached保存session时碰到偶发性session丢失问题?

原创
2016-12-01 00:25:35 918浏览

是偶发性的丢失,比如我第2次的ajax请求时读到的$_session为一个空数组,第3次请求时$_session值又正常了,然而我在某个页面里面有一次同时发起五六个请求时,很大几率会出现某次session丢失问题,求助,怎么解决

php.ini如下

<code>session.save_handler = memcached
session.save_path = "127.0.0.1:11211"</code>

运行环境是在我的vagrant虚拟机里,php、memcahe都是装在这个虚拟机里的,php是5.6,memcache是1.4.4,。奇怪的是当我把session使用文件来存时就没有碰到过session丢失的问题

回复内容:

是偶发性的丢失,比如我第2次的ajax请求时读到的$_session为一个空数组,第3次请求时$_session值又正常了,然而我在某个页面里面有一次同时发起五六个请求时,很大几率会出现某次session丢失问题,求助,怎么解决

php.ini如下

<code>session.save_handler = memcached
session.save_path = "127.0.0.1:11211"</code>

运行环境是在我的vagrant虚拟机里,php、memcahe都是装在这个虚拟机里的,php是5.6,memcache是1.4.4,。奇怪的是当我把session使用文件来存时就没有碰到过session丢失的问题

memcache 的命中率不可能这么低啊,是不是memcache满了?或者后台使用的是多台机器,session存储用的memcache不共享?
具体啥问题要看代码啥的

session有并发一致性问题,你可以在写入数据时上锁,写完后释放锁
解释请看这里:http://justcoding.iteye.com/b...

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。