Dart 1.3的性能达到Node.js同等水平

IT资讯 2458 Views

GoogleDart团队宣布发布DartSDK 1.3,该版本改进了异步服务器端代码的性能,Dart虚拟机上的执行效果已经可以与Node.js媲美,而Node.js使用了Google的另一项技术——V8引擎。

Dart提供了一个新的性能页面,通过一个HTTP服务器在三种情况下的每秒请求数、平均延迟和最大延迟绘制了Dart虚拟机和dart:io库的性能表现图。这三种情况是:

  • Hello——对所有请求都响应字符串“world”的简单HTTP服务器。

  • File——返回一个大小为100KB的文件的HTTP服务器。

  • JSON——返回一个动态生成的JSON字符串的HTTP服务器。

根据相应图表,与Dart 1.2相比,在HelloJSON场景下,Dart服务器可以处理的请求数比原来的两倍还多,而在File场景下,可以处理的请求数也有30%的改进。HelloJSON场景,平均延迟也相应下降到了不足原来的一半,File场景则下降了30%。再来看最大延迟,在HelloJSON场景下,最大延迟分别在125ms300ms上下大幅波动,而现在该值稳定在了5ms7ms

Google工程师Anders Johnsen介绍,Dart的服务器端性能是通过分代垃圾收集器得以改进的,减少了在Mac OSLinux上处理异步I/O的系统调用次数,优化了虚拟机编译器以及dart:coredart:async中的代码部分。

201312月,当时使用的配置与现在不同,TechEmpower基准测试的成绩是,Dart/nginx每秒处理35 000JSON请求,而Node.js每秒可以处理70 000个请求。现在Dart可以处理的JSON请求数是原来的两倍多,所以我们可以假定Dart虚拟机的性能达到了Node.js的同等水平。或许未来的TechEmpower基准测试会证明这一点。根据同一基准测试,使用GoogleGo构建的一个简单HTTP服务器以每秒处理215 000JSON请求的成绩打败了所有框架/平台。

***********************************

本文来自InfoQ微信公众账号:infoqchina

1、回复“今日新闻”,查看今天更新的新闻;

2、回复“今日英文”,查看今天英文站的更新;

3、回复“文章 +关键词”,搜索关键词相关内容;

4、回复“QCon”,了解QCon大会相关信息;

5、回复“活动”,了解最近InfoQ组织的线下沙龙;

6、回复“架构师”,获取《架构师》下载地址;

7、回复“投稿”,了解投稿和加入编辑团队的流程。

***********************************

如未说明则本站原创,转载请注明出处:NULL » Dart 1.3的性能达到Node.js同等水平