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

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

复制代码
mybatis-plus模块

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

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

查看跟踪核心代码

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

查看

复制代码
WorkerNodeEntity 类

给id加上 自增注解

查看

复制代码
WorkerNodeDAO 类

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

如图

最后给获取方法 加上锁

由此解决问题。

相关推荐
云烟成雨TD1 分钟前
Micrometer 系列【42】链路追踪:Span 体系 | 核心 API
java·链路追踪·micrometer
SelectDB5 分钟前
Apache Doris AI RAG 实战:从基础 RAG 到知识图谱增强的技术能力与选型
数据库
Gorway8 分钟前
理解 Spring 依赖注入:从构造器注入到集合与条件 Bean
java·后端
SelectDB16 分钟前
电商企业 PostgreSQL 迁移 Apache Doris:80TB 分析数据统一平台技术能力与实践
数据库
LiLiYuan.23 分钟前
【字符串常量池】
java·开发语言·面试
SelectDB25 分钟前
阶跃星辰 Agent 可观测:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB28 分钟前
ApacheDoris Iceberg V3 湖仓 DML:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB29 分钟前
ApacheDoris Python UDF:SQL 调用 Python 的技术能力、选型对比与实践
数据库
Sylvia33.30 分钟前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
瑞码空间42 分钟前
Python爬虫进阶实战笔记
开发语言·python·计算机·python爬虫