在实际的工作中,尤其在高并发的场景下,我们一定要对任何外部服务做好兜底策略,也就是说,如果我们调用外部的统一ID生成服务失败,那么我们也要有一个自己服务内部的ID生成策略用来进行最终的兜底(唯一ID生成方式及机器码+时间戳+自增)。很显然,在高并发巨大的流量冲击下,任何的服务都不可能保障100%高性能,低延迟的提供服务,我们的统一ID生成服务也是如此,那么我们要尽最大的努力保障ID生成成功,避免影响我们的核心业务,一定要保障我们的核心业务正常运转,即使后期我们做一些数据同步、补偿的方案。
统一生成ID服务方式 + 单点ID生成方式架构设计:
1.理论上定时任务是每天都要去生成一些ID;
2.低水位报警是一个补偿策略;
3.ID生成策略配置服务:根据不同的服务(ServiceA或ServiceB都有自己生成ID的要求)配置不同的生成规则;
4.ID规则路由服务:统一ID生成系统不止一个节点,那么ServiceA通过路由规则直接找到为其提供服务的节点(提升性能);
5.生成消费模型来实现,即异步完成ID获取;