Java、Scala和Go语言多线程并发对比测试

本文试图记录下对流行的Java、Scala和Go语言多线程并发对比测试,作为未来项目选择开发语言的一个参考。
具体的语言对比测试包括:
1)java+concurrent包;
2)java+AKKA1.3包;
3)java+AKKA2.0包;
4)Scala+ AKKA1.3包; 
5)Scala+ AKKA2.0包; 
6) Go+goroutine 
比对目标:1、性能对比;2、编码难易程度对比。

测试的例子:
1、对1~N的自然数里面统计有多少个质数。采用的算法是把1~N个自然数划分成多个数据段,然后交给多个子线程去分别累加,最后汇总各个子线程的总数。这样,可以充分利用多核的强大功能来加速程序的统计。从理论上看,这个例子是CPU资源敏感型的多线程例子。CPU资源越多,程序跑的就越快。例如,双核的情况下,程序所花时间是单核的一半左右。


由于我的资源有限,只搞了3个测试环境,如下:
测试环境(一):

1、硬件环境:AMD双核2.8G,4G内存
2、软件环境:winxp,JDK1.7,Scala2.91,AKKA1.3, AKKA2.0,GO1,

测试环境(二):

1、硬件环境:INTEL酷睿双核2.4G,4G内存
2、软件环境:winxp,JDK1.7,Scala2.91,AKKA1.3, AKKA2.0,GO1,

测试环境(三):

1、硬件环境: INTEL酷睿 2.4G,4G内存
2、软件环境:MAC OS,JDK1.7,Scala2.91,AKKA1.3, AKKA2.0,GO1,

今早,刚刚完成相关代码编写和初步测试工作。后面还需要把相关的代码部署到3个不同的测试环境里面进行测试,并写出相关的测试报告。

.........................................
测试结果已经出来了,因为太长,就放到下一篇文章里。点击

Java、Scala和Go语言多线程并发对比测试结果和结论

转载于:https://my.oschina.net/qinhui99/blog/59025

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值