分布式ID的生成方案
UUID:UUID是通用唯一标识的缩写,其优点是生成速度块,ID全局唯一。缺点是空间占用多(16字符),且不是递增有序的。
数据库主键自增:数据库设置主键且自增长。优点是空间占用小,主键自动增长,IO连续性好,数字类型查询速度明显优于字符串类型。缺点是并发性能不高,容易暴露数据总量
redis自增:redis计数器,原子性自增。优点是使用内存,并发性能好。缺点是数据已丢失,且容易暴露数据总量。
雪花算法:优点是不依赖于外部组件,性能好。缺点是时钟回拨后可能会重复。
雪花算法ID组成:1位符号位,41位时间戳(可以支持61年的时间跨度),10位机器ID,12位序列号(1ms可以生成4095个ID)
分布式ID的生成方案相关推荐
- 分布式唯一ID的几种生成方案
分布式ID的特性 唯一性:确保生成的ID是全网唯一的. 有序递增性:确保生成的ID是对于某个用户或者业务是按一定的数字有序递增的. 高可用性:确保任何时候都能正确的生成ID. 带时间:ID里面包含时间 ...
- 分布式「唯一ID生成器」的几种生成方案
前言 在互联网的业务系统中,涉及到各种各样的ID,如在支付系统中就会有支付ID.退款ID等.那一般生成ID都有哪些解决方案呢?特别是在复杂的分布式系统业务场景中,我们应该采用哪种适合自己的解决方案是十 ...
- Leaf-美团分布式ID生成服务
Leaf : 美团分布式ID生成服务 There are no two identical leaves in the world.(世界上没有两片相同的树叶.) - 莱布尼茨 现有分布式ID生成方案 ...
- uuid设置长度_转发 微博 Qzone 微信 分布式系统ID的生成方法之UUID、数据库、算法、Redis、Leaf方案...
点击上方「蓝字」关注我们 前言 一般单机或者单数据库的项目可能规模比较小,适应的场景也比较有限,平台的访问量和业务量都较小,业务ID的生成方式比较原始但是够用,它并没有给这样的系统带来问题和瓶颈,所以 ...
- 数据库 ID 生成方案:数据库自增
创建一个数据库实例,在这个实例中新建一个单独的表: 表结构如下: CREATE DATABASE `Test`;CREATE TABLE Test.test01 (id bigint(20) unsi ...
- 分库分表的 9种分布式主键ID 生成方案
<sharding-jdbc 分库分表的 4种分片策略> 中我们介绍了 sharding-jdbc 4种分片策略的使用场景,可以满足基础的分片功能开发,这篇我们来看看分库分表后,应该如何为 ...
- 分库分表的 9种分布式主键ID 生成方案,挺全乎的
<sharding-jdbc 分库分表的 4种分片策略> 中我们介绍了 sharding-jdbc 4种分片策略的使用场景,可以满足基础的分片功能开发,这篇我们来看看分库分表后,应该如何为 ...
- 面试官:你会几种分布式 ID 生成方案???
1. 为什么需要分布式 ID 对于单体系统来说,主键 ID 常用主键自动的方式进行设置.这种 ID 生成方法在单体项目是可行的,但是对于分布式系统,分库分表之后就不适应了.比如订单表数据量太大了,分成 ...
- 分布式系统概念 | 分布式ID:数据库、号段模式、雪花算法(Snowflake)、Redis实现方案
文章目录 分布式ID 数据库 自增ID 多主模式 号段模式 雪花算法 Redis 总结 分布式ID ID是数据的唯一标识,传统的做法是使用数据库的自增ID,但是随着业务规模的不断发展,数据量将越来越大 ...
最新文章
- Android学习——基础组件
- 15-DBUtils
- 通过vsphere client创建虚拟机并且安装windows 2008 64位操作系统及网络配置
- leetcode1177. 构建回文串检测(前缀和)
- for in for of区别_Python 第4课:for…in循环黄金搭档之range()函数
- 3.10 SE11创建类型组
- windows 7 help 帮助文件无法打开的解决
- Cocos2D-X笔记(1)制作一个动态的精灵
- 胚系短变异 | 变异位点及基因型准确性的过滤
- 步步为营 SharePoint 开发学习笔记系列 二、安装和配置
- Pull Request 到底是什么意思
- 麦库记事如何导出html,麦库记事使用问题解答
- 【PM杂谈】我理解的项目管理
- 华清远见嵌入式培训_第六周回顾与反思
- AGV导航中的最短路径算法比较
- mysql 危险字符_PHP过滤指定字符串,过滤危险字符
- 编辑器工具--通用编辑器工具(持续完善中)
- 求两个数之间的素数和
- 3.6 函数作图与渐近线
- 《python灰帽子》笔记四