What’s New in Performance Tuning [3/14/14]

Performance testing and tuning is something that, even when not the immediate priority, is always sitting in the back of one’s mind. Will the code perform well? Will the server process it efficiently? Is the web server running in the way it should be? The questions go on and on. Early this year, a few key gems emerged on the performance front. However, before jumping into the short list, I also want to highlight two performance-related projects and new releases.

metrics on JVM & ported metrics on Node.js

One of the popular areas in the performance tuning and analyzation space is building and determining performance for API services. The Dropwizard organization (℅ Coda Hale @coda) has done a stellar job putting together a Java library for building RESTful API services and also doing performance testing against API services. This in turn can be used against any API services that one would want to test. But for those that want a Node.js port? That’s available, too, thanks to Mike Ihbe (github: @mikejihbe).

The pending Node.js v0.12 release

Node.jsThere are a number of performance improvements on the horizon with the v0.12 release of Node.js. Some of these include TLS, Crypto, less Garbage Collector overhead and improved Cluster Support.

In Node.js v0.10 the TLS module is loaded on top of the netmodule and encrypts and decrypts network traffic. But in v0.12, TLS is rewritten to use libuv directly, removing intermediate layers.

  • Crypto with v0.12 is going to expand the usage of assembly versions. This will utilize the CPU more readily for ciphers, giving them a boost—sometimes a huge boost—in performance.
  • Garbage Collector is reducing the number of persistent handles, also known as a strong reference, to objects in V8 heap. This will provide easier-to-collect objects and remove them to free up resources.
  • Cluster Support in v0.12 is going to a default practice of round-robin. This will address the issue of v0.10 loads often being distributed unevenly, causing odd workload balances.

Now for the roundup of some recent blog posts on performance tuning and analyzation:

Until next roundup, happy performance tuning!

adronhall@gmail.com'

Adron Hall is a jovial, proactive, test & code, code & test, get things done well, software architect, engineer, code monkey, coder, and distributed systems advocate. As a coder, Hall plies a polygot language path including C#, Java, JavaScript, and Erlang lately -- as well as Pascal, Basic, Visual Basic, C++, C, COBOL, RPG, CL, and others in the past. He founded Deconstructed.io with Aaron Gray, Node PDX with Troy Howard, and more startups are in the works. You can read his blog at Composite Code (http://compositecode.com). View posts by .

Interested in writing for New Relic Blog? Send us a pitch!