在微服务满天飞的时代,一些基础实施必须先完善,ID生成器就是其中一个。很多人都使用UUID作为主键,但是,按照数据库索引的结构,以及数据库保存记录的方式,UUID这种方式性能极差,自增的数字类型才是解决之道。Twitter Snowflake算法就可以很好的满足,一图胜过千言
此算法不难理解,难的是二进制按位操作和移位操作,只要理解了这两种位操作,这个算法就完全不是问题了
github地址:https://github.com/wuda0112/common-utils/blob/master/src/main/java/com/wuda/keygen/KeyGeneratorSnowflake.java