HashMap和ConcurrentMap性能测试 2021-11-02 02:46 192阅读 0赞 测试代码: public static void main(String[] args) { Map map=new HashMap(); User user=new User(1L,"san",2,"wuhan ","2",true); ConcurrentMap map1=new ConcurrentHashMap(); int j=10000; int i=0; long a = System.currentTimeMillis(); while (i<j){ Object put = map.put("use" + i, user); i++; } long b = System.currentTimeMillis(); System.out.println("map存花费时间"+(b-a)+"毫秒"); i=0; while (i<j){ Object object = map.get("use" + i); i++; } long c = System.currentTimeMillis(); System.out.println("map取花费时间"+(c-b)+"毫秒"); i=0; while (i<j){ Object put = map1.put("use" + i, user); i++; } long d=System.currentTimeMillis(); System.out.println("currmap存花费时间"+(d-c)+"毫秒"); i=0; while (i<j){ Object object = map1.get("use" + i); i++; } long f=System.currentTimeMillis(); System.out.println("currmap取花费时间"+(f-d)+"毫秒"); } 当数据量为一万时: map存花费时间11毫秒 12 9 11 10 去掉最高最低后取平均 10.6 map取花费时间5毫秒 5 4 3 4 去掉最高最低后取平均 4.6 currmap存花费时间18毫秒 11 11 11 9 去掉最高最低后取平均 11 currmap取花费时间5毫秒 3 5 3 4 去掉最高最低后取平均 4.6 当数据量为十万时: map存花费时间63毫秒 56 57 61 67 去掉最高最低后取平均 60.3 map取花费时间18毫秒 25 18 20 21 去掉最高最低后取平均 19.6 currmap存花费时间43毫秒 49 51 49 54 去掉最高最低后取平均 49.6 currmap取花费时间12毫秒 14 12 16 13 去掉最高最低后取平均 13 当数据量为百万时: map存花费时间346毫秒 218 192 211 193 去掉最高最低后取平均 207.3 map取花费时间406毫秒 492 456 549 482 去掉最高最低后取平均 476.6 currmap存花费时间674毫秒 697 632 762 214 去掉最高最低后取平均 667.6 currmap取花费时间131毫秒 137 161 155 581 去掉最高最低后取平均 151 当数据量500万时候: map存花费时间2783毫秒 3269 3239 3150 3241 去掉最高最低后取平均 3210 map取花费时间729毫秒 677 664 669 661 去掉最高最低后取平均 670 currmap存花费时间3036毫秒 2721 2848 2678 2733 去掉最高最低后取平均2767.3 currmap取花费时间786毫秒 808 2546 771 1879 去掉最高最低后取平均 1157.6 当数据量为千万时: map存花费时间7803毫秒 7786 9094 7168 9756 去掉最高最低后取平均 8227.6 map取花费时间6323毫秒 1195 3780 4140 4489 去掉最高最低后取平均 4136.3 currmap存花费时间5057毫秒 7021 6895 4986 7231 去掉最高最低后取平均 6300 currmap取花费时间4741毫秒 1349 1064 5120 1192 去掉最高最低后取平均 2427.3 当数据量为亿时: 内存不够 结论: ConcurrentMap存取的效率在数量小和数据量大的时候都一直都比较优越,就是在数据量在500万左右时候浮动较大, 而且ConcurrentMap是线程安全的.建议使用 ConcurrentMap的key和value都不允许为空 文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。
相关 测试报告参考规范之测试目标(功能和性能)、功能测试方法和性能测试框架、性能瓶颈定位模式 ![SouthEast][] [SouthEast]: /images/20210923/d64e6c85e51b4c7186f55137f370beb3.png 短命女/ 2021年09月26日 17:10/ 0 赞/ 165 阅读
相关 性能测试类型之负载测试和压力测试 ![Center][] [Center]: /images/20210923/99e0ba968dd042fa91e724b557e5769c.png 川长思鸟来/ 2021年09月26日 17:58/ 0 赞/ 245 阅读
相关 [性能测试]Python性能测试 环境:Linux 以下几个工具都是基于FlameGraph ([http://www.brendangregg.com/flamegraphs.html][http_www 墨蓝/ 2021年10月23日 20:26/ 0 赞/ 337 阅读
相关 HashMap和ConcurrentMap性能测试 测试代码: public static void main(String[] args) { Map map=new HashMap(); 阳光穿透心脏的1/2处/ 2021年11月02日 02:46/ 0 赞/ 193 阅读
相关 【性能测试】性能测试的基础理论 转发自博客园贺满:https://www.cnblogs.com/puresoul/p/5456855.html ,有删减。 随着软件行业的快速发展,现代的软件系统越来越复 冷不防/ 2022年03月08日 15:44/ 0 赞/ 172 阅读
相关 【性能测试】性能测试工具选择 转发自博客园贺满:https://www.cnblogs.com/puresoul/p/5503134.html,有删减。 本篇文章主要简单总结下性能测试工具的原理以及如何 亦凉/ 2022年03月08日 16:54/ 0 赞/ 167 阅读
相关 ConcurrentMap接口 ConcurrentMap接口 两个实现 ConcurrentHashMap ConcurrentSkipListMap 支持并发排序功能,弥补Concurr 今天药忘吃喽~/ 2022年05月14日 12:56/ 0 赞/ 32 阅读
相关 Golang 单元测试和性能测试 开发程序其中很重要的一点是测试,我们如何保证代码的质量,如何保证每个函数是可运行,运行结果是正确的,又如何保证写出来的代码性能是好的,我们知道单元测试的重点在于发现程序设计或实 本是古典 何须时尚/ 2022年07月24日 17:19/ 0 赞/ 55 阅读
相关 php性能测试下载,PHP性能测试利器-Xdebug和phpstorm Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。以下为Windows+Phpstorm+Xampp+Xde 太过爱你忘了你带给我的痛/ 2022年11月12日 20:57/ 0 赞/ 64 阅读
相关 性能测试基础---性能测试分类 性能测试(狭义) 性能测试方法是通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。通俗地说,这种方法就是要在特定的运行条件下验证系统的处理能 缺乏、安全感/ 2022年12月05日 08:45/ 0 赞/ 63 阅读
还没有评论,来说两句吧...