【架构】一款永不重复的高性能分布式发号器,实战nginxpdf

本文介绍了一款自研的高性能分布式发号器,它具有全局唯一、粗略有序、可反解、可制造的特性,并提供三种发布模式:嵌入发布、中心服务器发布和REST发布。设计上利用时间有序性与自增序列,避免了分布式锁,保证了高性能和高可用。同时,支持秒级和毫秒级有序,以及水平伸缩。
摘要由CSDN通过智能技术生成

零、基本术语

发号器:用于生成唯一流水号(也即俗称的唯一ID)的服务系统,称之为发号器

一、技术选型

UUID

优点:能够保证唯一性

缺点:(1)完全的时间数据=>性能比较差、比较长、占用空间大、间接导致数据库性能下降;(2)无序=>导致B+树索引在写的时候会有过多的随机写操作,不会产生有顺序的append操作,而是需要进行insert操作,这将读取整个B+树节点到内存并在插入该条记录后会将整个节点写会磁盘=>在记录占用空间比较大的情况下,写的性能会明显下降

数据库

单库时(自增字段):局限性在于自增字段完全依赖数据库,会导致数据库移植、扩容、洗数据、分库分表问题

分库分表时(水平伸缩=>自增字段+数据库seq+步长step):缺陷在于服务节点固定(即step固定,继续增加服务节点难以进行扩展)、仍强依赖于数据库(对数据库造成压力

开源项目-Snowflake

Twitter开源的发号器&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值