goSnowFlake
goSnowFlake copied to clipboard
snowflake一种变种实现
感觉snowflake的算法挺强大的。但有时候我发现datacenterid和workerid有时候并不需要这么多位,时间戳的位数和序号的位数要是可调的就好了,就写了个各个位数可调的自己玩玩 https://github.com/liuyongshuai/goutils/tree/master/snowflake 自己测了下,目前暂时没发现问题。 另外,你的那个timeReGen()方法是不是还有改进的余地?
不错 不过那个64位其实也不应该限制 假设要生成32位的数字呢
问个比较低级的问题哈,每次重新运行会导致生成的ID重复吗?
问个比较低级的问题哈,每次重新运行会导致生成的ID重复吗?
不会,snowflake与时间、机器、进程等有关系 除非你拨乱系统时钟,才有可能碰撞
ok, 谢谢