项目采用SDB,本人第一次使用,很多东西不熟悉,目前系统需要实现一个唯一流水号,即需要使用到序列
1. 应用程序为多节点部署;
2. 每个节点有各自的缓存,如每个节点缓存100个序列号;
此逻辑如何实现,保证每个应用节点取到的序列号不重复?
初步设计,集合:
当前编号:1
步长: 100
第一次获取后,更新结果为:
当前编号:101
步长: 100
第二次获取后,更新结果为:
当前编号:201
步长: 100
-----------------------------------------------------------------------------------
现在不确定的问题是:
1. 在获取时,2个节点可能获取到SDB中同一状态; --- 这个时候该如何处理;
2. 在更新时,2个节点分别采用事务是否能控制不同时更新?