editreadme
This commit is contained in:
32
README.md
32
README.md
@@ -4,7 +4,35 @@
|
||||
用一种全新的雪花漂移算法,让ID更短、生成速度更快。
|
||||
核心在于缩短ID长度的同时,还能保持每毫秒并发处理量(50W/0.1s),且能保持伸缩能力。
|
||||
|
||||
## 功能说明
|
||||
## 需求来源
|
||||
|
||||
1.作为架构设计的你,肯定想要解决数据库主键唯一的问题。
|
||||
|
||||
2.你肯定希望这个主键是用最少的存储空间,索引速度更快的。
|
||||
|
||||
3.你还会考虑在分库分表(合库合表)的时候,主键值要能直接使用,并能反映业务时序。
|
||||
|
||||
4.如果这样的主键值太长,超过前端 JS Number 类型最大值,估计你会把 Long 型转换为 String 型,你肯定觉得有点不正常。
|
||||
|
||||
5.自增Guid占用空间大,可能也不是你想要的。
|
||||
|
||||
6.你希望系统能运行 100 年以上。
|
||||
|
||||
|
||||
## 传统雪花算法的问题
|
||||
|
||||
1.生成的ID太长。
|
||||
|
||||
2.依赖外部缓存系统。
|
||||
|
||||
3.并发量不够。
|
||||
|
||||
4.不能解决时间回拨问题。
|
||||
|
||||
5.不支持后补生成前序ID。
|
||||
|
||||
|
||||
## 雪花漂移算法特点
|
||||
|
||||
1.ID更短,是传统算法的几倍,用50年都不会超过 js Number类型最大值。(默认配置WorkerId是6bit,自增数是6bit)
|
||||
|
||||
@@ -18,8 +46,6 @@
|
||||
|
||||
6.不依赖任何外部缓存和数据库。(但WorkerId必须由外部指定)
|
||||
|
||||
7.目前是C#版,很快会出java、php等版本。
|
||||
|
||||
|
||||
## 文件说明
|
||||
|
||||
|
||||
Reference in New Issue
Block a user