之前有说过,我们的momo_worker项目是使用go编写的,当时是基于1.4.2这个版本,今天(2015年9月9日)google发布了go 1.5.1,之前因为go 1.5 bug太多就没有升级,这次升级了一下,试试看效果。1.4.2和1.5.1的具体对比就不贴了,大家有兴趣自行google吧,下面主要展示下go1.5.1的在我们生产环境下的性能提升。
momo_worker
通过上面3张图能看出,3点后cgo calls大幅下降,这应该是得益于go去掉了大量的c代码。gc、threads、file descriptor、memory都有大幅下降。
这里还体现不出go 1.5.1的性能有多少提升,不过已经能看出来,在系统资源的消耗上,1.5.1有了巨量的下降。
echo test
这里通过 echo 框架的一个基础测试,来展现下go 1.5.1对于web应用来说有的提升。
两幅图的测试,都是基于echo框架,测试string输出,测试代码。上图是1.4.2的,下图是1.5.1的,可以看到1.5.1提升很大,rps有10%的提升,我猜测应该是因为gc的优化以及goroutine优化的影响。