您的位置:首页 > 编程语言 > Java开发

JAVA JDK5 UUID 测试结果

2015-08-06 18:25 489 查看
今天做项目用到了UUID,查看介绍挺复杂的,于是测试了一下。

有如下现象:

第一次生成需要 15-25 毫秒。 差不多平均20毫秒。但是我用for循环1000次,结果很意外。只有第一次差不多需要20毫秒,而后面的所有次数都是0毫秒。我猜想是因为UUID生成的时候需要读取很多系统数据,第一次读取的时候被缓存,后面会非常快。

经过测试,数据跨越半个地球,从一边到对面差不多要280毫秒。每次数据请求就需要生成一个UUID,显然UUID.randomUUID()
 的性能是无法接受的。

不知道你有没有好的替换方案?

经过我测试,AtomicLong.incrementeAndGet() 和 BigInteger.add(BigInteger big) 都不到0毫秒就能生成,非常快。

因为每次测试结果悬殊很大,所以想找更精确的办法:点击打开链接 http://blog.csdn.net/paul_lh/article/details/6419982

上面介绍了使用系统获得毫秒会有问题,然后我使用纳秒测试结果差不多。可能这个UUID本来就很慢吧。

我的系统是ubuntu 12.04 LTS.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jdk UUID