加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

如何在php / mysql Web应用程序中实现悲观锁定?

发布时间:2020-12-11 23:53:10 所属栏目:MySql教程 来源:网络整理
导读:如何在php / mysql Web应用程序中实现悲观锁定? web-user打开一个页面来编辑一个数据集(行) 网络用户点击“锁定”按钮,以便其他用户能够阅读但不能写入此数据集 网络用户进行一些修改(可能需要1到30分钟) 网络用户点击“保存”或“取消”,删除“锁定” 在这

如何在php / mysql Web应用程序中实现悲观锁定?

> web-user打开一个页面来编辑一个数据集(行)
>网络用户点击“锁定”按钮,以便其他用户能够阅读但不能写入此数据集
>网络用户进行一些修改(可能需要1到30分钟)
>网络用户点击“保存”或“取消”,删除“锁定”

在这种情况下,php / mysql中是否有标准方法?如果网络用户从未点击“保存”/“取消”但关闭了互联网开发者,会发生什么? 最佳答案 传统上,这是通过在数据库中记录适当标记的布尔锁定列来完成的.

这种锁定的功能是必须释放锁定,并且环境可以自然地防止这种情况发生(系统崩溃,用户愚蠢,网络数据包丢失等等).这就是为什么你需要提供一些手动解锁方法和/或施加时间限制(可能有一个cron作业?)记录锁定的时间长度.如果浏览器仍处于打开状态,您可以实施某种AJAX轮询以保持记录锁定?无论如何,您可能最好验证记录中的数据与修改之前获取锁定时的数据相同.

这种行为的这种限制在Web应用程序中尤为普遍,但对于使用此方法的任何事情都是如此 – 对于一个,Sage Line 50是一个bug,我经常在机器/应用程序崩溃后删除锁定文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读