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.
有如下现象:
第一次生成需要 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.
相关文章推荐
- Ubuntu 安装 JDK 问题
- Shell脚本实现随机数多种方法介绍(date、random、uuid)
- jdk与jre的区别 很形象,很清晰,通俗易懂
- jdk中String类设计成final的原由
- win7下安装 JDK 基本流程
- jdk环境变量配置
- win2003 jsp运行环境架设心得(jdk+tomcat)
- windows linux jdk安装配置方法
- Mysql中存储UUID去除横线的方法
- PHP中生成UUID自定义函数分享
- 简单记录Cent OS服务器配置JDK+Tomcat+MySQL
- Android开发的IDE、ADT、SDK、JDK、NDK等名词解释
- Java4Android开发教程(一)JDK安装与配置
- Eclipse配置Tomcat和JDK步骤图解
- java中sdk与jdk的区别详细解析
- jdk中密钥和证书管理工具keytool常用命令详解
- java动态代理(jdk与cglib)详细解析
- Shell脚本实现在Linux系统中自动安装JDK
- python uuid模块使用实例
- linux安装jdk,tomcat 配置vsftp远程连接的步骤