您好,匿名用户
随意问技术百科期待您的加入

PHP使用Windows下的Memcache做session_handler莫名其妙丢失

0 投票
症状

有set_session.php和read_session.php两个文件。访问set_session.php,种下session数据。然后访问read_session.php,发现session数据读取正常。不论5分钟后刷新read_sesion.php还是再在别的文件访问,都正常。
但是如果我按住f5键(注意是按住),大约5秒后松开(也就是说浏览器在短时间内刷新了几十、几百次),read_session.php反馈出来的session就为空。这时拿着session_id去memcache里找,发现该key存在,但value为空。

环境

服务器是Windows Server 2003 32bit。使用XAMPP3.1.0,PHP版本是5.4。PHP配置如下:

session.save_handler = memcache
session.save_path = "127.0.0.1:22003"
session.auto_start = 1

MC版本是1.4.4,从http://downloads.northscale.com/memca... 下载的,DLL是http://windows.php.net/downloads/pecl...

诡异之处

我能确定:内存肯定没有满、没有任何其他人访问这台服务器,也没有其他应用运行在上面。
完完全全同样的xampp/php/mc配置,在我本地的windows7(64bit)上面,就没有任何的问题。如果我把服务器上的session_handler换成files,也没有任何的问题。最后我们怀疑是连接数或者win03方面的问题,发现win03在tcp连接上没有限制,如果是win03内核的问题,我也木有办法了。。╮(╯_╰)╭

这个问题折腾了一整天,最后决定放弃memcache存储,等到换到linux再用mc存储,反正也没什么高负载。但是我们用mc存储其它数据,比如商品啊,分类啊,或者smarty缓存,都很正常,唯独session没法装进去。

用户头像 提问 2013年 12月5日 @ 我和小伙伴们都惊呆了 上等兵 (156 威望)
分享到:

你的回答

隐私保护: 您的邮箱仅用于发送系统通知。
请输入验证码:
    图片验证码看不清?
登录注册后不会被要求输入验证码。

提一个问题:

相关问题

0 投票
0 回复 188 阅读
0 投票
1 回复 17 阅读
用户头像 提问 2014年 3月4日 @ Lady 上等兵 (162 威望)
+1 投票
2 回复 462 阅读
用户头像 提问 2012年 12月1日 @ Ahri 上等兵 (292 威望)
0 投票
1 回复 41 阅读
用户头像 提问 2012年 12月1日 @ Jax 上等兵 (324 威望)
0 投票
1 回复 29 阅读
用户头像 提问 2012年 12月1日 @ 阿尔托莉雅 下士 (587 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...