我已经收到了相当多的会话冲突异常。通常每天至少一次,但有时我会部署并连续获得2-3个,然后什么都没有。
该应用程序运行在Rails 3.2.2和unicorn上,会话存储在memcached中。
异常发生在不同的位置,在不同的控制器中,我真的找不到它们有什么共同点。这可能是什么原因造成的?
发布于 2012-04-10 22:25:42
我不知道ruby/rails如何使用memcached处理会话数据,但通常工作如下:
new session -> using command ADD
update session -> using GET with token and than the command CAS (check and set)如果存在散列冲突,则命令ADD将失败,因为会话已存在。另一个可能的问题是,另一个进程是否更新了GET和CAS之间的同一会话。
https://stackoverflow.com/questions/10080300
复制相似问题