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

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

复制代码
mybatis-plus模块

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

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

查看跟踪核心代码

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

查看

复制代码
WorkerNodeEntity 类

给id加上 自增注解

查看

复制代码
WorkerNodeDAO 类

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

如图

最后给获取方法 加上锁

由此解决问题。

相关推荐
Romantic_love_几秒前
理解USART真实收发过程
开发语言·stm32·单片机·学习
十年Java程序媛2 分钟前
注解已经加上,但是事务没有回滚?拆解 AOP 代理底层原因 + 代码示例
java
μθημα4 分钟前
K8s Pod 管理实战:虚拟机环境下的具体命令与步骤
java·docker·kubernetes
数据狐(Datafox)12 分钟前
1688.item_search工程实战:1688商品列表API分页采集与B2B货源数据分析落地
java·前端·数据分析
省长12 分钟前
不想写代码,但想要集成一个登录页面?Sa-Token-Quick-Login 帮你实现!
java·后端·开源
秋名山码民14 分钟前
拙见AI——AI操作系统
数据库·人工智能
得物技术16 分钟前
企业级 MultiAgent 的记忆系统:短期上下文与四层记忆架构实现|得物技术
java·人工智能·后端
李可以量化19 分钟前
Redis Client 从了解到精通(二)上:redis-py 高级用法与核心命令实战
前端·数据库·redis·python·缓存·ptrade
南棱笑笑生22 分钟前
20260826在Ubuntu22.04系统下编译眺望Pi-RK3572工业派开发板的Ubuntu系统
数据库
仍然.22 分钟前
Redis---String
数据库·redis·缓存