美文网首页
分布式ID生成算法

分布式ID生成算法

作者: wayyyy | 来源:发表于2020-12-24 14:46 被阅读0次
  • 为什么需要分布式ID?

  • 分布式ID需要满足哪些条件:

  • 分布式ID有哪些生成方式

    • UUID
    • 数据库自增ID
    • Redis
    • 雪花算法
    • 号段模式

UUID

UUID 全称:Universally Unique Identifier,即通用唯一识别码。

UUID 是有一组32位的16进制数字构成,总数为16^{32} = 2^{128}\approx 3.4 \ast 10^{38},也就是说若每纳秒产生1兆个UUID,要花100亿年才会将所有UUID用完。

UUID由以下几部分组成:

  • 当前的日期和时间
  • 时钟序列
  • 全局唯一的机器识别号:比如网卡mac地址。

数据库自增ID

  • 优点:
    实现简单,ID单调自增,数值类型查询快。
  • 缺点:
    DB存在单点宕机风险,无法解决高并发压力。

Redis


雪花算法


号段模式


参考资料:
1、https://zhuanlan.zhihu.com/p/107939861
2、https://zhuanlan.zhihu.com/p/62494795

相关文章

网友评论

      本文标题:分布式ID生成算法

      本文链接:https://www.haomeiwen.com/subject/bprmnktx.html