同时的AJAX请求会导致PHP会话无法正确更新
在我的应用程序中,我有一个每10秒运行一次的AJAX请求,它告诉服务器用户仍在连接。当用户执行某个操作时,会向服务器发送另一个AJAX请求,该请求会在PHP$\u会话变量中增加一个数字同时的AJAX请求会导致PHP会话无法正确更新,php,ajax,session,extjs,Php,Ajax,Session,Extjs,在我的应用程序中,我有一个每10秒运行一次的AJAX请求,它告诉服务器用户仍在连接。当用户执行某个操作时,会向服务器发送另一个AJAX请求,该请求会在PHP$\u会话变量中增加一个数字 当这两个AJAX请求同时发生时,我似乎遇到了一些问题,$\u会话中的数字有时不会增加。我认为这是因为当两个请求同时运行时,有时增加$\u SESSION变量的请求会在另一个请求之前完成,因此最后一个请求会用旧数据“覆盖”会话。其他人有没有遇到过这个问题,或者知道如何解决这个问题?最简单的解决方法是在当前ajax请
当这两个AJAX请求同时发生时,我似乎遇到了一些问题,$\u会话中的数字有时不会增加。我认为这是因为当两个请求同时运行时,有时增加$\u SESSION变量的请求会在另一个请求之前完成,因此最后一个请求会用旧数据“覆盖”会话。其他人有没有遇到过这个问题,或者知道如何解决这个问题?最简单的解决方法是在当前ajax请求完成处理后的10秒钟内设置超时时间。因此,不要使用间隔,在完成时设置超时。问题是由我的自定义会话处理程序(使用会话设置保存处理程序)导致的,该处理程序正在将会话信息保存到Oracle数据库中。它没有阻止两个同时修改会话的脚本。因此,为了阻止这种情况发生,我使用flock()向会话“read”处理程序添加了一个基于文件的锁。然后在“销毁”处理程序中删除文件并移除锁
这解决了问题,但现在意味着AJAX请求似乎必须按顺序运行。您可以共享代码吗?