美团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 2023-02-17 22:05 zhangyukun 阅读(121) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端