Engine Yard now offers Node.js

21.08.2012
Paving the way for more server-side use of JavaScript, platform-as-a-service (PaaS) provider Engine Yard has added the Node.js library to its collection of hosted Web application tools.

The service, which Engine Yard first offered as a preview last November, will join Engine Yard's two other Web application-friendly offerings, Ruby on Rails and PHP.

Running Node.js as a service, instead of in-house, eliminates many headaches for the developer, said Mark Gaydos, Engine Yard senior vice president of worldwide marketing. No server hardware needs to be procured, nor does the developer need to worry about maintaining Node.js itself, or the other software Node.js depends upon to run.

Built on Google's V8 JavaScript engine, is a library of JavaScript functions that work under an event-driven concurrency model, meaning they are especially well-suited for distributed real-time applications.

Node.js is similar to how Unix operates, in that it offers a set of stand-alone functions that can be strung together to form larger processes. "Node modules do one thing and do it well," explained Mike Amundsen, a developer for API management software vendor Layer 7 Technologies, in an introductory talk at the O'Reilly Open Source Convention in Portland, Oregon, last month. Node.js is "meant to be fast. It's optimized for the machine, not for the developer," he said. Games, interactive tools, real-time analytics and other Web applications have all benefitted from running on the Node.js platform.

Although JavaScript code is traditionally run on browsers, developers are finding that running JavaScript on the server side offers a number of advantages. For one, it allows large, sprawling Web applications to run more efficiently. Organizations "could get a lot more users supported per dollar of compute resources," said Bill Platt, vice president of operations at Engine Yard. The server-side Node.js also eliminates much of the worry about tweaking JavaScript code for many end-user devices that exist.