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

如何在phpmysql Web应用程序中实现悲观锁定?,第1张

概述如何在php / mysql Web应用程序中实现悲观锁定?> web-user打开一个页面来编辑一个数据集(行)>网络用户点击“锁定”按钮,以便其他用户能够阅读但不能写入此数据集>网络用户进行一些修改(可能需要1到30分钟)>网络用户点击“保存”或“取消”,删除“锁定”在这种情况下,php / mysql中是否有标准方法?如果网络用

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

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

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

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

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

总结

以上是内存溢出为你收集整理的如何在php / mysql Web应用程序中实现悲观锁定?全部内容,希望文章能够帮你解决如何在php / mysql Web应用程序中实现悲观锁定?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存