美团leaf生成Id

美团lef有两种模式:

​ Leaf-segment: 数据库一次下发一个号段的号,或者说每次下发指定步长的内的Id,然后又内存控制分配id的生成,并且发号程序会持有两个segment,当前一个segment使用了10%就会检查下一个segment是否已经去数据库取号,如果没有这时候就去取号了。Leaf-segment 对db有依赖,如果db 挂了两个segment发完了,就没工作了,所以 每次发号量一般是峰值的600倍,这样可以让程序用10-20分钟。

​ 美团的Leaf-segment持有两个buffer,是为了让发号更加平滑,避免发完 当前缓冲区,再去初始化下一个缓冲区,这段时间请求数据库带来的同步等待。

​ 美团的Leaf-segment是一种和时间无关的算法,不存在时间回拨问题,但是id太有规律,容易被人猜到业务量。

​ Leaf-snowflake:雪花算法+zk方案,并且本地缓存workId和centerId。

posted on   zhangyukun  阅读(121)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示