Go语言 vs Java语言
Posted Kaitiren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go语言 vs Java语言相关的知识,希望对你有一定的参考价值。
天生骄傲的Go语言以高并发闻名于世,牛皮不能光靠吹,今天我们就来做一个对比试验,体会一下Go在并发方面的巨大优势!靶子就瞄准Java,谁让它是后端开发语言的老大哥呢。
基本任务:初始化一个100*100的矩阵,矩阵每个元素是从[0,1)随机取的双精度浮点数,计算矩阵跟自身相乘,需要100万次乘法运算。
机器配置:Linux云主机,8核16G内存。
分别尝试开10、100、1000、10000、100000、1000000个线程(协程)执行上述的基本任务。
试验结果(运行耗时/ms):
并发度 | 10 | 100 | 1000 | 10000 | 100000 | 1000000 |
---|---|---|---|---|---|---|
go | 0 | 5 | 56 | 507 | 5062 | 50457 |
java | 36 | 109 | 611 | 3063 | 27684 | 285971 |
速度差异很明显,go以绝对优势领先。而且随着并发度的增加,go的耗时呈线性增长;java则愈显吃力,Hold不住这么高的并发量。go可以轻松地把8个核用满,而java最多只用到5.2个核。
以上是关于Go语言 vs Java语言的主要内容,如果未能解决你的问题,请参考以下文章
文心一言 VS 讯飞星火 VS chatgpt (19)-- go语言的slice和rust语言的Vec的扩容流程是什么?