雪花算法 集群uid重复问题 uid-generator-spring-boot-starter

1、在生成环境 在某个业务使用该插件生成uid,由于业务整合了

复制代码
mybatis-plus模块

2、该业务是分部署集群部署以及使用的多线程获取uid,使用中发现唯一建冲突,生成的uid有重复。

然后查看日志发现 workerId 始终为0 怀疑是生成workerId出了问题。

查看跟踪核心代码

发现 是保存响应的代码有问题,没有响应id

查看

复制代码
WorkerNodeEntity 类

给id加上 自增注解

查看

复制代码
WorkerNodeDAO 类

复制代码
addWorkerNode方法 
复制代码
@Options注解加上
复制代码
keyProperty参数

如图

最后给获取方法 加上锁

由此解决问题。

相关推荐
gelald几秒前
JVM - 垃圾回收
java·jvm·后端
AI科技星2 分钟前
基于四维时空光速不变公设的量子几何与量子力学本质全维度推导验证
开发语言·人工智能·opencv·计算机视觉·数学建模·r语言
东离与糖宝3 分钟前
模式匹配支持原生类型!JDK26 switch语法极简实战
java·人工智能
不会写DN6 分钟前
Go 中最主流 JWT 库 jwt -go
开发语言·后端·golang
captain37610 分钟前
MySQL增删改查
数据库·mysql
2501_9216494911 分钟前
RESTful 金融数据 API 文档:设计原则与最佳实践
开发语言·后端·python·金融·restful
workflower12 分钟前
如何使用设计模式-误区
java·开发语言·设计模式·集成测试·软件工程·需求分析·软件需求
故事和你9115 分钟前
洛谷-入门4-数组3
开发语言·数据结构·c++·算法·动态规划·图论
人道领域16 分钟前
Day | 12 【苍穹外卖 :导出Excel数据表】
java·后端·sql·servlet·mvc·intellij-idea
IvorySQL19 分钟前
PostgreSQL 技术日报 (3月27日)|当 AI 开始自动创建数据库
数据库·postgresql·开源