最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java雪花算法生成分布式id詳解

 更新時(shí)間:2024年01月23日 09:49:27   作者:小星星*  
這篇文章主要介紹了Java雪花算法生成分布式id詳解,隨著業(yè)務(wù)的增長(zhǎng),有些表可能要占用很大的物理存儲(chǔ)空間,為了解決該問題,后期使用數(shù)據(jù)庫(kù)分片技術(shù),將一個(gè)數(shù)據(jù)庫(kù)進(jìn)行拆分,通過數(shù)據(jù)庫(kù)中間件連接,需要的朋友可以參考下

Java雪花算法生成分布式id

隨著業(yè)務(wù)的增長(zhǎng),有些表可能要占用很大的物理存儲(chǔ)空間,為了解決該問題,后期使用數(shù)據(jù)庫(kù)分片技術(shù)。

將一個(gè)數(shù)據(jù)庫(kù)進(jìn)行拆分,通過數(shù)據(jù)庫(kù)中間件連接。

如果數(shù)據(jù)庫(kù)中該表選用ID自增策略,則可能產(chǎn)生重復(fù)的ID,此時(shí)應(yīng)該使用分布式ID生成策略來生成ID。

在這里插入圖片描述

snowflake是Twitter開源的分布式ID生成算法,結(jié)果是一個(gè)long型的ID。

其核心思想是:使用41bit作為毫秒數(shù),10bit作為機(jī)器的ID(5個(gè)bit是數(shù)據(jù)中心,5個(gè)bit的機(jī)器ID),12bit作為毫秒內(nèi)的流水號(hào)(意味著每個(gè)節(jié)點(diǎn)在每毫秒可以產(chǎn)生 4096 個(gè) ID),最后還有一個(gè)符號(hào)位,永遠(yuǎn)是0

在這里插入圖片描述

mybatis-plus已經(jīng)集成了雪花算法,完成以下兩步即可在項(xiàng)目中集成雪花算法

第一:在實(shí)體類中的id上加入如下配置,指定類型為id_worker

@TableId(value = "id",type = IdType.ID_WORKER)
private Long id;

第二:在application.yml文件中配置數(shù)據(jù)中心id和機(jī)器id

mybatis-plus:
  mapper-locations: classpath*:mapper/*.xml
  # 設(shè)置別名包掃描路徑,通過該屬性可以給包中的類注冊(cè)別名
  type-aliases-package: com.heima.model.article.pojos
  global-config:
    datacenter-id: 1
    workerId: 1

datacenter-id:數(shù)據(jù)中心id(取值范圍:0-31)

workerId:機(jī)器id(取值范圍:0-31)

到此這篇關(guān)于Java雪花算法生成分布式id詳解的文章就介紹到這了,更多相關(guān)Java雪花算法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

仁布县| 滨州市| 临江市| 离岛区| 弥渡县| 泾源县| 沈阳市| 阜南县| 卢龙县| 陵川县| 宁城县| 嵊州市| 南京市| 武邑县| 邯郸县| 西昌市| 寿宁县| 金秀| 孟连| 宜阳县| 历史| 神木县| 和平县| 姚安县| 九江县| 黄大仙区| 武安市| 聂拉木县| 翁牛特旗| 金山区| 凯里市| 文安县| 宁德市| 金塔县| 新泰市| 剑川县| 班戈县| 扎兰屯市| 蓬莱市| 昭觉县| 巢湖市|