您的位置:首页 > 业界新闻

互联网通用架构技术----分布式系统ID生成器

2017-04-26 00:00 344 查看

分布式ID标准

分布式系统中往往ID需要跨库全局唯一,否则引发业务层的异常冲突。

全局ID必须是数字且升序,主要考虑到升序ID可以保证DB的性能。

ID生成器必须稳定,因为这个系统是被所有系统所依赖的。

借鉴Instagram的ID生成算法



整个ID的二进制长度为64位

前36位使用时间戳,以保证ID是升序增加

中间13位是分库标识,用来标识当前这个ID对应的记录在哪个数据库中

后15位为自增序列,以保证在同一秒内并发时,ID不会重复。每个shard库都有一个自增序列表,生成自增序列时,从自增序列表中获取当前自增序列值,并加1,做为当前ID的后15位
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息