JAVA JDK5 UUID 测试结果

1 篇文章 0 订阅
1 篇文章 0 订阅

今天做项目用到了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.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值