高性能分布式发号器(ID生成器)
分表分库的分布式应用通常需要用到 ID 生成器生成流水号(支付流水号,订单号等),又称为发号器,以标识数据的全局唯一,ID 全局不可重复。
需要特别注意的是发号器服务的高可用性和高性能。当业务严重依赖发号器服务时,发号器服务有可能成为整个系统的短板。
所以发号器服务需要高可用集群部署来保障高可用性,需要高性能以满足高并发的场景。
分表分库的分布式应用通常需要用到 ID 生成器生成流水号(支付流水号,订单号等),又称为发号器,以标识数据的全局唯一,ID 全局不可重复。
需要特别注意的是发号器服务的高可用性和高性能。当业务严重依赖发号器服务时,发号器服务有可能成为整个系统的短板。
所以发号器服务需要高可用集群部署来保障高可用性,需要高性能以满足高并发的场景。
几种简单的序列号生成器的实现方式,涉及了单例模式使用,多例集合管理。