构建Web应用程序使用。检查资源的可用性由另一个用户
用户可以通过它们的浏览器访问服务器上的共享资源主机,但是如果UserA已经在使用Resource1,那么在UserA发布Resource1或直到给定时间量之前,Resource1不应该可用于UserB。
对于这部分:我选择使用带有元组列表(resource,currentuser)的MySQL表并运行cron任务来删除过期的元组。
现在我想能够通知UserA UserB想要访问Resource1,并且如果没有从UserA回答,那么UserA在Resource1上失去了他的锁定,然后该资源就可用于UserB。
对于这部分,我想我必须使用AJAX。我曾考虑过以下解决方案:
用户的浏览器定期进行AJAX调用(让我们说每一分钟)来证明他还活着,并且在通话时,如果另一个用户请求了相同的资源,他必须挑战一个服务器在给定的时间内请求(例如验证码)。如果挑战失败,这意味着用户不在这里了(也许他离开了他的浏览器或网页不重点)。
棘手的部分是:“他必须在给定的时间内挑战服务器请求(例如验证码)”。怎么做?
上午我以下的最佳路径?