Title
摘要: 前面的理论基础和位运算都了解了,下面我们来生成雪花算法的第一部分,也就是时间部分。时间部分的逻辑起始很简单,就是规定一个起始时间戳,然后用当前时间戳减去起始时间戳,这两个数的差就是我们要的结果。简单看一下代码逻辑: 我们规定的起始时间是 2015 01 01 00:00:00 ,然后获取当前时间,用 阅读全文
posted @ 2019-08-14 16:16 程序员郭艺宾 阅读(2954) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了雪花算法的理论基础,可以对大概的算法有个了解,但是细节上可能还是模糊,下面来说一下雪花算法中用到的位运算。这里先介绍两个,一个是: 介绍一个例子比如有三个数字,分别打印出这三个数字的二进制形式: 可以看到,5对应的二进制就是101,8对应的2进制就是1000,10对应的二进制就是1010。 阅读全文
posted @ 2019-08-14 13:38 程序员郭艺宾 阅读(1245) 评论(0) 推荐(0) 编辑
摘要: 针对每个公司,随着服务化演进,单个服务越来越多,数据库分的越来越细,有的时候一个业务需要分成好几个库,这时候自增主键或者序列之类的主键id生成方式已经不再满足需求,分布式系统中需要的是一个全局唯一的id生成规则。既然号称在全局分布式系统中唯一,那么主键的生成规则必然要复杂一些,以前看过很多资料,都对 阅读全文
posted @ 2019-08-13 19:26 程序员郭艺宾 阅读(1196) 评论(0) 推荐(0) 编辑