fity3是一个类似twitter雪花的方案生成器,可容纳53位。
python-fity3的Python项目详细描述
fity3是一个类似twitter雪花的方案生成器,可容纳53位。
其方案是:
timestamp | worker_id | sequence 41 bits | 8 bits | 4 bits
Twitter’s snowflake scheme用于生成id的 一堆好东西。大量粗略排序的id可以是 每秒以不协调的方式创建。
然而,在使用 用于数字的ieee 754浮点。尤其是JavaScript和 scores for Redis’ sorted sets。
此方案允许:
- 69 years of ids (the same as snowflakes)
- at most 256 unique id generating workers
- each worker can produce at most 16 ids per millisecond
- so at most 4 million ids per second
如果你正在建立一个不太受欢迎的系统 使用率将增长到每秒创造超过400万个新事物,但是 可以从不协调的递增id生成中获益,但不希望 每次你通过websocket请求数据 javascript,这个方案可能是一个有用的替代方案。
>>>importfity3>>>f3=fity3.generator(1)>>>next(f3)14127739136>>>next(f3)14132125952>>>next(f3)14135079168# convenience to convert to a unix timestamp>>>fity3.to_timestamp(14135079168)1413374250
希望我们不会成为2079年支持这些系统的人。