Tôi đang làm một bài kiểm tra căng thẳng nhanh chóng trên hai (loại) xin chào các dự án thế giới được viết bằng node.js và lõi asp.net. Cả hai đều chạy trong chế độ sản xuất và không có bộ ghi chép kèm theo. Kết quả thật đáng kinh ngạc! Lõi ASP.NET vượt trội hơn ứng dụng node.js ngay cả sau khi thực hiện một số công việc bổ sung trong khi ứng dụng node.js chỉ hiển thị chế độ xem.
Ứng dụng 1: http://localhost:3000/nodejs
node.js
Sử dụng : node.js, công cụ kết xuất nhanh và vash.
Mã trong điểm cuối này là
router.get('/', function(req, res, next) {
var vm = {
title: 'Express',
time: new Date()
}
res.render('index', vm);
});
Như bạn có thể thấy, không có gì ngoài việc gửi ngày hiện tại thông qua time
biến đến chế độ xem.
Ứng dụng 2: http://localhost:5000/aspnet-core
asp.net core
Sử dụng : ASP.NET Core, nhắm mục tiêu mẫu mặc địnhdnxcore50
Tuy nhiên, ứng dụng này làm một cái gì đó ngoài việc chỉ hiển thị một trang có ngày trên đó. Nó tạo ra 5 đoạn văn bản ngẫu nhiên khác nhau. Về mặt lý thuyết, điều này sẽ làm cho ứng dụng này nặng hơn một chút so với ứng dụng nodejs.
Đây là phương thức hành động khiến trang này
[ResponseCache(Location = ResponseCacheLocation.None, NoStore = true)]
[Route("aspnet-core")]
public IActionResult Index()
{
var sb = new StringBuilder(1024);
GenerateParagraphs(5, sb);
ViewData["Message"] = sb.ToString();
return View();
}
Kết quả kiểm tra căng thẳng
Kết quả kiểm tra căng thẳng ứng dụng Node.js
Cập nhật: Theo đề xuất của Gorgi Kosev
Sử dụng npm install -g recluster-cli && NODE_ENV=production recluster-cli app.js 8
Kết quả kiểm tra căng thẳng ứng dụng ASP.NET Core
Không thể tin vào mắt mình! Không thể đúng là trong bài kiểm tra cơ bản này, lõi asp.net nhanh hơn nhiều so với nodejs. Dĩ nhiên đây không phải là số liệu duy nhất được sử dụng để đo lường hiệu suất giữa hai công nghệ web này, nhưng tôi tự hỏi tôi đang làm gì sai trong phía node.js? .
Là một nhà phát triển asp.net chuyên nghiệp và muốn điều chỉnh node.js trong các dự án cá nhân, đây là một loại khiến tôi thất vọng - vì tôi hơi hoang tưởng về hiệu suất. Tôi nghĩ rằng node.js nhanh hơn lõi asp.net (nói chung - như đã thấy trong các điểm chuẩn khác nhau) Tôi chỉ muốn chứng minh điều đó với chính mình (để khuyến khích bản thân thích nghi với node.js).
Vui lòng trả lời trong nhận xét nếu bạn muốn tôi bao gồm nhiều đoạn mã hơn.
Cập nhật: Phân phối thời gian của ứng dụng .NET Core
Phản hồi của máy chủ
HTTP/1.1 200 OK
Cache-Control: no-store,no-cache
Date: Fri, 12 May 2017 07:46:56 GMT
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8
Server: Kestrel