日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

聊一聊Twitter的雪花算法

來源: 責編: 時間:2023-09-21 20:48:30 313觀看
導讀什么是Twitter的雪花算法方法?這是一種在分布式系統中生成唯一ID的解決方案。Twitter在推文、私信、列表等方面使用這種方法。(1) ID是唯一且可排序的(2) ID包含時間信息(按日期排序)(3) ID適用于64位無符號整數(4)

AFT28資訊網——每日最新資訊28at.com

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

這是一種在分布式系統中生成唯一ID的解決方案。Twitter在推文、私信、列表等方面使用這種方法。AFT28資訊網——每日最新資訊28at.com

(1) ID是唯一且可排序的AFT28資訊網——每日最新資訊28at.com

(2) ID包含時間信息(按日期排序)AFT28資訊網——每日最新資訊28at.com

(3) ID適用于64位無符號整數AFT28資訊網——每日最新資訊28at.com

(4) 僅包含數字值AFT28資訊網——每日最新資訊28at.com

  • 符號位(1位):保留位(始終為0)。這可以為將來的請求保留。它可以潛在地用于使整體數字為正數。
  • 時間戳(41位):以毫秒為單位的紀元時間戳(雪花的默認紀元等于2010年11月04日01:42:54 UTC)
  • 機器ID(10位):可容納1024臺機器
  • 序列號(12位):每臺機器上的本地計數器,每次增加1。該數字在每毫秒重置為0。從理論上講,一臺機器每秒最多可以支持4096(212)個新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.www897cc.com/showinfo-26-10910-0.html聊一聊Twitter的雪花算法

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: C++函數式編程:提高代碼表達力和可維護性

下一篇: 一文讀懂分布式追蹤的歷史發展點滴

標簽:
  • 熱門焦點
Top 主站蜘蛛池模板: 科技| 高阳县| 灯塔市| 扶余县| 紫金县| 荣成市| 桦川县| 胶州市| 凤翔县| 通州市| 迭部县| 南川市| 开鲁县| 孙吴县| 将乐县| 黄冈市| 谢通门县| 图们市| 监利县| 阳城县| 嘉峪关市| 宜川县| 策勒县| 红河县| 思南县| 镇远县| 荆州市| 霍州市| 台安县| 两当县| 桦川县| 会宁县| 独山县| 彰武县| 织金县| 呼图壁县| 涡阳县| 区。| 繁昌县| 墨竹工卡县| 舒兰市|