分布式全局ID生成策略
Java生成主键ID
当数据库进行分库分表的时候, 原有的主键自增就会不方便继续使用了, 这个时候我们就可以用Java代码来处理主键, 然后插入到数据库中
UUID
最容易让人想到的就是UUID(Universally Unique Identifier)通用唯一标识符.
UUID的标准型式包括了32个16进制的数字, 以连字号分为五段, 形式为8-4-4-4-12的36个字符, 这个是Java自带的, 使用方便简单.
UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的.
当前日期和时间(UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同),时钟序列,全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获得).
优点:本地生成, 没有网络消耗
缺点
实现
如果使用的JDK为1.5的话, 那么可以直接调用java.util.UUID 即可
生成uuid数
1 |
|