Skip to content

Latest commit

 

History

History
31 lines (27 loc) · 1.65 KB

research.md

File metadata and controls

31 lines (27 loc) · 1.65 KB

需求调研

现状

目前业务中的使用生成器,主要用于生成唯一ID。 主要场景有生成用户I号,生成帖子ID。 目前各个业务使用redis的INCR方式生成自增的唯一ID。

总结

基本上常见的分布式情况下的UniqueID的生成方法就分为了两大类, 一类是基于分配的发号器,另外一类是基于规则计算的唯一序列。 而后者的常用算法通常就是UUID以及OjbectID和SnowFlake 基于发号器的优势在于可以按照准连续的增加,可以用于Int32等的存储。但是性能和系统复杂度上存在一定的缺陷。 而基于计算规则的优势主要是分布式情况下,各机器独立运算,性能上有保证。但是通常都需要使用64位以上的空间来进行存储。 目前业务中很少业务使用规则计算的唯一序列,都是基于分配的发号器。 因此优先需要实现分配的发号器。

已有实现

其他厂商实现

个人实现