fity3是一个类似twitter雪花的方案生成器,可容纳53位。

python-fity3的Python项目详细描述


fity3是一个类似twitter雪花的方案生成器,可容纳53位。

https://travis-ci.org/cablehead/python-fity3.svg?branch=master

其方案是:

timestamp | worker_id | sequence
 41 bits  |  8 bits   |  4 bits

Twitter’s snowflake scheme用于生成id的 一堆好东西。大量粗略排序的id可以是 每秒以不协调的方式创建。

然而,在使用 用于数字的ieee 754浮点。尤其是JavaScriptscores 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年支持这些系统的人。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java嵌套循环打印一个数字,旁边有相同数量的星号   java JodReports替代方案   java如何将模型类parcelable对象从片段传递到活动?   java JCS缓存删除功能不删除特定元素   如何打开。Java的dll文件。   java在这种情况下如何选择聚合根?   java从CellEditorListener获取编辑的TreeNode   Java到web服务和mysql   从openssl ec在Java中创建公钥时出现加密无效密钥异常   Java数组:添加多个数组的元素时忽略空数组   java在初始化后向fragment发送数据   JButtons的java数组正在返回void   若联接列不包含特定值,则java JPA条件生成器仅返回实体   java ActionBar问题:NPE   java Portlet是被广泛使用还是非常罕见?