雪花算法主键冲突问题

一般情况

一般菜鸟使用直接new一个

new IdWorker(1, 1, 1).nextId()

但是批量插入的时候就会出问题了

new一个然后循环nextId()才对。

多线程导致

网上的解决方案是使用redis保存workId,每次生成workerId时,从redis中获取到当前workerId最大值,并+1作为当前workerId,并存入redis,如果workerId为1023,自增为1024,则重置0,作为当前workerId,并存入redis

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容