- mysql自增
优点:简单
缺点:扩容复杂,业务增大时数据迁移困难
- 基于时间戳和随机字符串
优点:对人比较友好
缺点:随机数生成不易控制
- UUID
优点:简单粗暴,性能好,全球唯一,基本不会有性能问题
缺点:占用空间大,无序,查询效率低
变种:COMB算法
- redis自增
优点:简单,易实现,数字ID天然有序
缺点:依赖redis,考验redis性能
-
Twitter-Snowflake算法
优点:
- 不依赖数据库,性能高,单机有序
- 灵活,支持多节点部署
缺点:
- 无法做到全局递增
-
微信id生成算法
- 类似于批量生成多个id,性能好,避免每次访问库的压力
- 可能会有单点故障,服务重启ID不连续
-
百度 - UidGenerator
- 雪花算法变种
- Leaf——美团点评分布式ID生成系统- 美团技术团队
- wuid — 一个比 UUID 快百倍的唯一 ID 生成器
- vesta
- MongoDB — ObjectId
本文由博客一文多发平台 OpenWrite 发布!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。