通过rest接口获取自增id (twitter snowflake算法)
Posted 孤独的和弦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过rest接口获取自增id (twitter snowflake算法)相关的知识,希望对你有一定的参考价值。
1. 算法介绍
参考 http://www.lanindex.com/twitter-snowflake%EF%BC%8C64%E4%BD%8D%E8%87%AA%E5%A2%9Eid%E7%AE%97%E6%B3%95%E8%AF%A6%E8%A7%A3/
Twitter-Snowflake算法产生的背景相当简单,为了满足Twitter每秒上万条消息的请求,每条消息都必须分配一条唯一的id,这些id还需要一些大致的顺序(方便客户端排序),并且在分布式系统中不同机器产生的id必须不同。
Snowflake算法核心
把时间戳,工作机器id,序列号组合在一起
2. 功能实现
基于beego 框架
代码详见: https://github.com/mtour/restsnowflake
个人觉得此算法设计的很巧妙,可以方便记录按照时间排序,10位的机器id,足以支撑1024个节点
以上是关于通过rest接口获取自增id (twitter snowflake算法)的主要内容,如果未能解决你的问题,请参考以下文章
Twitter的分布式自增ID算法snowflake (Java版)
Twitter的分布式自增ID算法snowflake (Java版)