优点:本地生成,生成简单,性能好,没有高可用风险
缺点:长度过长,字母和数字组合,存储冗余,且无序不可读,查询效率低
2....优点:避免了每次生成ID都要访问数据库并带来压力,提高了性能
缺点:属于本地生成策略,存在单点故障,如果服务器宕机,重启服务造成ID不连续
4....缺点:如果系统中没有Redis,还需要引入新的组件,增加系统复杂度;需要编码和配置的工作量比较大。
考虑到单节点的性能瓶颈,可以使用 Redis 集群来获取更高的吞吐量。...各个 Redis 生成的 ID 为:
A:1, 4, 7, 10, 13
B:2, 5, 8, 11, 14
C:3, 6, 9, 12, 15
随便负载到哪个机确定好,未来很难做修改。...另外,比较适合使用 Redis 来生成每天从0开始的流水号。比如订单号 = 日期 + 当日自增长号。可以每天在 Redis 中生成一个 Key ,使用 INCR 进行累加。