当前位置:首页 > 科技  > 软件

聊一聊Twitter的雪花算法

来源: 责编: 时间:2023-09-21 20:48:30 499观看
导读什么是Twitter的雪花算法方法?这是一种在分布式系统中生成唯一ID的解决方案。Twitter在推文、私信、列表等方面使用这种方法。(1) ID是唯一且可排序的(2) ID包含时间信息(按日期排序)(3) ID适用于64位无符号整数(4)

BQL28资讯网——每日最新资讯28at.com

什么是Twitter的雪花算法方法?

这是一种在分布式系统中生成唯一ID的解决方案。Twitter在推文、私信、列表等方面使用这种方法。BQL28资讯网——每日最新资讯28at.com

(1) ID是唯一且可排序的BQL28资讯网——每日最新资讯28at.com

(2) ID包含时间信息(按日期排序)BQL28资讯网——每日最新资讯28at.com

(3) ID适用于64位无符号整数BQL28资讯网——每日最新资讯28at.com

(4) 仅包含数字值BQL28资讯网——每日最新资讯28at.com

  • 符号位(1位):保留位(始终为0)。这可以为将来的请求保留。它可以潜在地用于使整体数字为正数。
  • 时间戳(41位):以毫秒为单位的纪元时间戳(雪花的默认纪元等于2010年11月04日01:42:54 UTC)
  • 机器ID(10位):可容纳1024台机器
  • 序列号(12位):每台机器上的本地计数器,每次增加1。该数字在每毫秒重置为0。从理论上讲,一台机器每秒最多可以支持4096(2¹²)个新ID。

Twitter雪花算法方法的优缺点

  • 它长度为64位,是UUID的一半大小
  • 可扩展性强(可容纳1024台机器)
  • 高可用性(每台机器每毫秒可以生成4096个唯一ID)
  • 一些UUID版本不包含时间戳。在这种情况下,Twitter雪花算法具有可排序的优势。
  • 设计需要Zookeeper(缺点)
  • 生成的ID不像UUID那样是随机的。将来的ID可以预测。
  • 41位中可以表示的最大时间戳(约69年)。需要在此之后找到解决方案 :)

使用注意事项

  • Discord使用雪花算法,将其纪元设置为2015年的第一秒。
  • Instagram使用了格式的修改版本,其中41位用于时间戳,13位用于分片ID,10位用于序列号。
  • Mastodon的修改格式具有48位的毫秒级时间戳,它使用了UNIX纪元。剩下的16位用于序列数据。

本文链接:http://www.28at.com/showinfo-26-10910-0.html聊一聊Twitter的雪花算法

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: C++函数式编程:提高代码表达力和可维护性

下一篇: 一文读懂分布式追踪的历史发展点滴

标签:
  • 热门焦点
  • 红魔电竞平板评测:大屏幕硬实力

    前言:三年的疫情因为要上网课的原因激活了平板市场,如今网课的时代已经过去,大家的生活都恢复到了正轨,这也就意味着,真正考验平板电脑生存的环境来了。也就是面对着这种残酷的
  • Golang 中的 io 包详解:组合接口

    io.ReadWriter// ReadWriter is the interface that groups the basic Read and Write methods.type ReadWriter interface { Reader Writer}是对Reader和Writer接口的组合,
  • 微信语音大揭秘:为什么禁止转发?

    大家好,我是你们的小米。今天,我要和大家聊一个有趣的话题:为什么微信语音不可以转发?这是一个我们经常在日常使用中遇到的问题,也是一个让很多人好奇的问题。让我们一起来揭开这
  • 2023年,我眼中的字节跳动

    此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的“头腾
  • 慕岩炮轰抖音,百合网今何在?

    来源:价值研究所 作者:Hernanderz“难道就因为自己的一个产品牛逼了,从客服到总裁,都不愿意正视自己产品和运营上的问题,选择逃避了吗?”这一番话,出自百合网联合创
  • 签约井川里予、何丹彤,单视频点赞近千万,MCN黑马永恒文希快速崛起!

    来源:视听观察永恒文希传媒作为一家MCN公司,说起它的名字来,可能大家会觉得有点儿陌生,但是说出来下面一串的名字之后,或许大家就会感到震惊,原来这么多网红,都签约这家公司了。根
  • 三星显示已开始为AR设备研发硅基LED微显示屏

    7月18日消息,据外媒报道,随着苹果首款头显产品Vision Pro在6月份正式推出,AR/VR/MR等头显产品也就将成为各大公司下一个重要的竞争领域,对显示屏这一关
  • 7月4日见!iQOO 11S官宣:“鸡血版”骁龙8 Gen2+200W快充加持

    上半年已接近尾声,截至目前各大品牌旗下的顶级旗舰都已悉数亮相,而下半年即将推出的顶级旗舰已经成为了数码圈爆料的主流,其中就包括全新的iQOO 11S系
  • iQOO Neo8系列或定档5月23日:首发天玑9200+ 安卓跑分王者

    去年10月,iQOO推出了iQOO Neo7系列机型,不仅搭载了天玑9000+,而且是同价位唯一一款天玑9000+直屏旗舰,一经上市便受到了用户的广泛关注。在时隔半年后,
Top