Today's release of the Dart SDK
version 1.3 includes a 2x performance improvement for asynchronous Dart code
combined with server-side I/O operations. This puts Dart in the same league as popular
server-side runtimes and allows you to build high-performance server-side Dart VM apps.
We measured
request-per-second improvements using three simple HTTP benchmarks: Hello,
File, and JSON. Hello, which improved by 130%, provides a measure for how many basic
connections an HTTP server can handle, by simply measuring an HTTP server responding with a
fixed string. The File benchmark, which simulates the server accessing and serving static
content, improved by nearly 30%. Finally, as a proxy for performance of REST apps, the JSON
benchmark nearly doubled in throughput. In addition to great performance, another benefit of
using Dart on the server is that it allows you to use the same language and libraries on both
the client and server, reducing mental context switches and improving code reuse.
The data for the chart above was collected on a Ubuntu
12.04.4 LTS machine with 8GB RAM and a Intel(R) Core(TM) i5-2400 CPU, running a single-isolate
server on Dart VM version 1.1.3, 1.2.0 and 1.3.0-dev.7.5. The source
for the benchmarks is available.
Anders Johnsen is a software engineer on the Chrome team, working in the Aarhus,
Denmark office. He helps Dart run in the cloud. Posted by Louis Gray,
Googler