网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 软件工程 > 软件设计 > 架构设计 >

状态机幂等

时间:2025-01-16 21:37

人气:

作者:admin

标签:

导读:何为状态幂等? 先了解何为幂等。 幂等大家应该都知道。 在针对数据更新操作的幂等中,有一个实现方案是基于版本号的数据库乐观锁。 在账户记账业务中,我们通常会使用这种方式...

何为状态幂等?


先了解何为幂等。

幂等大家应该都知道。

在针对数据更新操作的幂等中,有一个实现方案是基于版本号的数据库乐观锁。
在账户记账业务中,我们通常会使用这种方式。

具体的姿势是下面的1、3两步(前提是表里有version):

  1. select包含version字段在内的当前数据记录
  2. 执行业务逻辑处理
  3. 在update数据时,设置version递增,并当前version作为更新条件。即:update record set version=version+1,col=#val# where version=#version#

有了这些知识,我们再来理解状态幂等,就比较容易了。 数据状态就是数据的流转状态,并且每个流转都涉及到前置状态和目标状态。

状态机幂等,就是在更新状态时,将前置状态作为update语句的where条件。


与版本号乐观锁相比,有所不同的是,使用状态机幂等,可以不用事先查询数据。只要程序中定义了状态流转规则(状态机),那么,在执行update操作时,直接加上前置状态条件即可。

当看到一些不好的代码时,会发现我还算优秀;当看到优秀的代码时,也才意识到持续学习的重要!--buguge
本文来自博客园,转载请注明原文链接:https://www.cnblogs.com/buguge/p/18675797


温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信