为了账号安全,请及时绑定邮箱和手机立即绑定

添加维护字段方案的疑问

你说的CAS的情况,先比较,在更新,说是需要一个维护字段(比如token)。也就是更新的时候 where 条件添加上刚才的查询中一下这个字段是不刚才查询到的.(where id= selectID & token=$res['token'])。是这样的吗?同时更新的时候把这个 token 也更新下。这种方案我还很少见。请问这种方案也是很常用的吗?谢谢

正在回答

1 回答

@Q646448149 您好!这个案例中关键的逻辑是对数据版本字段的维护和使用数据版本字段进行CAS。

第一个问题:通过在where条件中添加数据版本字段的验证,来确定要更新的数据是最新的才能被修改;如果已经被修改,数据版本就会被更新,那么当前更新就要被更新失败。

第二个问题:这种方案不通用,但在很多场景中来代替锁,简单说就是避免使用锁来优化性能。


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

添加维护字段方案的疑问

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号