分布式id生成问题求解答

如何设计一个分布式id 尽量在高并发下不重复,还要尽可能短
我想到的是时间戳➕redis 自增id
有没有更好的答案,雪花算法什么的太长了,最好还不要用redis这种中间件
求各位大神解答
#暑期实习还是日常实习# #如果不工作真的会快乐吗# #设计人的面试记录# #牛客创作赏金赛# #redis高频面试题# #腾讯# #美团# #字节# #阿里# #快手#
全部评论
回答参考方案:说一下各大方案及优缺点就行。 1. UUID(优点本地生成、缺点是16字节128位存储成本高以及会产生页分裂问题 2.雪花算法(优点生成性能高、可以根据业务特征分配Bit位、缺点是依赖强时间回钟) 3.MySQL自增主键和Redis的Incr命令(不做探讨) 3. 分布式ID生成服务、如美团的leaf算法(Leaf-segment和Leaf-snowflake) 大家这里可以去看美团技术文章 这里引导一下思路就好
1 回复 分享
发布于 2025-03-19 14:21 广东
尽可能短的话, 可以时间戳位数小一点, 然后机器id也加进来唯一确定一个机器( redis就不用了), 支持的机器总数也可以少一点, 这样id就短, 最后就是一毫秒内支持的请求数量自增id也可以少点, 就短点, 再者可以换一种编码方式
1 回复 分享
发布于 2025-03-19 10:16 上海
雪花算法不长吧?比uuid短很多
点赞 回复 分享
发布于 2025-03-19 08:09 安徽

相关推荐

点赞 评论 收藏
分享
刚刷到字节跳动官方发的消息,确实被这波阵仗吓了一跳。在大家还在纠结今年行情是不是又“寒冬”的时候,字节直接甩出了史上规模最大的转正实习计划——ByteIntern。咱们直接看几个最硬的数,别被花里胡哨的宣传词绕晕了。首先是“量大”。全球招7000多人是什么概念?这几乎是把很多中型互联网公司的总人数都给招进来了。最关键的是,这次的资源分配非常精准:研发岗给了4800多个Offer,占比直接超过六成。说白了,字节今年还是要死磕技术,尤其是产品和AI领域,这对于咱们写代码的同学来说,绝对是今年最厚的一块肥肉。其次是大家最关心的“转正率”。官方直接白纸黑字写了:整体转正率超过50%。这意味着只要你进去了,不划水、正常干,每两个人里就有一个能直接拿校招Offer。对于2027届(2026年9月到2027年8月毕业)的同学来说,这不仅是实习,这简直就是通往大厂的快捷通道。不过,我也得泼盆冷水。坑位多,不代表门槛低。字节的实习面试出了名的爱考算法和工程实操,尤其是今年重点倾斜AI方向,如果你简历里有和AI相关的项目,优势还是有的。而且,转正率50%也意味着剩下那50%的人是陪跑的,进去之后的考核压力肯定不小。一句话总结: 27届的兄弟们,别犹豫了。今年字节这是铁了心要抢提前批的人才,现在投递就是占坑。与其等到明年秋招去千军万马挤独木桥,不如现在进去先占个工位,把转正名额攥在手里。
喵_coding:别逗了 50%转正率 仔细想想 就是转正与不转正
字节7000实习来了,你...
点赞 评论 收藏
分享
01-30 22:03
门头沟学院 Java
用微笑面对困难:我滴妈,【俩月】【实习】【主管】仨debuff吃满了,独立设计开发的项目写了绝大占比的运营板块,你独立开发,那维护、问题复盘、日志更新、bug、策划书全是自己整的? 不建议写那么大,可以从小出发更容易
点赞 评论 收藏
分享
评论
1
11
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务