GO,NODEJS,.NetCore性能对比
测试电脑配置
RAM:8G
CPU:amd A8-5600K 3.6GH
OS:Win10
开发语言版本
GO:1.9
Nodejs:8.1.2
.NetCore:2.0
测试场景
循环50亿次并计算50亿次偶数出现的次数
测试代码
GO
package main
import (
"fmt"
"time"
)
func TestNumber2() {
var number int64
number = 5000000000
var n int64
var i int64
fmt.Println(time.Now())
for i = 1; i <= number; i++ {
if i%2 == 0 {
n = n + 1
}
}
fmt.Println(time.Now().String())
fmt.Println(n)
}
NODEJS
var num = 5000000000;
var count = 0;
console.log(new Date());
for(var i=1;i<=num;i++)
{
if(i%2==0)
{
count++;
}
}
console.log(new Date());
console.log(count);
.netCore
using System;
namespace dotnet
{
class Program
{
static void Main(string[] args)
{
TestNumber();
}
static void TestNumber()
{
long num = 5000000000;
long count = 0;
Console.WriteLine(DateTime.Now.ToString());
for(long i=1;i<=num;i++)
{
if(i%2==0)
{
count++;
}
}
Console.WriteLine(DateTime.Now.ToString());
Console.WriteLine(count);
Console.ReadKey();
}
}
}
性能对比
语言 | 开始时间 | 结束时间 |
---|---|---|
GO | 2017-08-29 14:20:32.5776878 +0800 CST m=+0.012003200 | 2017-08-29 14:20:50.448711 +0800 CST m=+17.883026400 |
Nodejs | 2017-08-29T06:21:55.508Z | 2017-08-29T06:26:44.283Z |
.netCore | 2017/8/29 17:22:47 | 2017/8/29 17:23:00 |
测试截图
Nodejs
GO
.netCore
结论
单纯的从该项测试来看:.netCore的性能表现不错13秒,超过了Go的性能18秒,nodeJs表现最差289秒,运行时间超过