gpt4 book ai didi

PHP/MySQL/jQuery 记录的悲观锁

转载 作者:可可西里 更新时间:2023-10-31 22:56:13 26 4
gpt4 key购买 nike

我一直在考虑为我参与的应用程序开发一些简单的记录锁定。有一些用户会花费数小时来完成对记录的编辑。当其他人想要更改记录时,这会导致问题。目前不涉及锁定。

我不确定乐观锁定在我的情况下是否可靠,因为记录是通过 AJAX 请求保存的。我正在考虑应用某种悲观锁定;使用两个字段,例如 locking_user_idlocking_timestamp,我可以跟踪谁打开了记录以及上次打开记录的时间。

但是,由于用户可能一次打开它几个小时,我怎么知道用户是放弃了它还是只是在努力工作?我不想强制他们每 5 分钟更新一次 ~ 但这可能是可能的(AJAX 每 5 分钟保存一次)。

也许 jQuery 进程可以在用户工作时进行计数,并会每 5 分钟触发一次 AJAX 请求 (getJSON) 以更新 locking_timestamp。这样我就可以维护记录的工作人员。在时间戳变“旧”后,我可以假设用户不再使用 reocrd。有没有人有过这种锁定的经验?

最佳答案

使用 AJAX 请求更新 locking_timestamp 是一个很好的策略,而且效果很好。

但是,通话之间的 5 分钟间隔对我来说似乎有点长。除非您的流量非常高,否则从用户的角度来看,大约 30 秒会更好。想象一下有人不得不等待 5 分钟,因为另一个用户打开了记录,然后关闭了他的浏览器......

关于PHP/MySQL/jQuery 记录的悲观锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15012314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com