方法一:数据库的自增ID
缺点:当分库分表时候会直接崩溃。在插入库之前无法获得ID。
方法二:UUID
缺点:当uuid值作为单号(主键)插入时,就不再是mysql的顺序插入(自增id作为主键,在b+树中是顺序插入的,性能很高),会页分裂性能会下降。
方法三:雪花算法
雪花算法利用时间戳,机器id,序列号生成的唯一ID
方法四:利用消息进行编码
(1)将消息内容和时间戳一起hash。
(2)将消息内容作为雪花算法的附加内容,生成ID。
方法五:使用redis或者zookeeper生成
03-01
2629