我想为我的应用程序中发生的事件生成 ID。
事件频率取决于用户负载,因此每秒可能发生数十万次。
我负担不起使用UUID.randomUUID()
,因为它可能在性能问题上存在问题 - 看看这个。
我想到了如下生成ID:
System.currentTimeMillis() + ";" + Long.toString(_random.nextLong())
我的班级什么时候_random
是静态的。java.util.Random
我的问题是:
- 您认为这种组合的分布是否足以满足我的需求?
- Java 的 Random 实现是否与当前时间相关,因此我将两者结合的事实是否危险?