Web technologies are evolving at an exciting pace these days. HTML5 and CSS3 provide the tools to make the web fluid and engaging, allowing developers to create rich web apps with ease. However, despite the advancements on client-side development, server-side development has evolved at a much slower pace. A developer can create their web app, but velocity slows when server interaction requires tedious refactoring to work with new client technologies.
Node.js also provides a plugin framework: the Node Packaged Modules (NPM). NPM provides developers with a quick and easy method for downloading and installing modules for their applications. From MVC frameworks to multi-processor clusters, thousands of modules exist to solve any problem you may face.
Node.js is a powerful platform for network applications, from web servers to web services. While it is still a young platform in web development, many corporations such as eBay, LinkedIn, and Wal-Mart have already used it in production systems. In fact, Windows Azure cloud platform began supporting Node.js in June 2012, making it easier than ever to take advantage of Node.js.
Why Node.js on Azure?
Windows Azure supports a number of ways to get started with Node.js on the cloud. The quickest and easiest is to use Node.js to create an Azure website. In less than two minutes, I was able to create a new website on Azure and publish the default site for Express, the premier MVC framework for Node.js. Azure works seamlessly with Visual Studio and WebMatrix 2, allowing you to easily develop and publish your Azure projects. Each development tool provides site templates, Node.js intellisense, and access to NPM. Projects can be published using TFS or Git, allowing for full source control and collaboration.
Another approach to using Node.js on Azure is as a Cloud Service, which functions similar to an Azure website but provides greater flexibility and increased scalability. Cloud services are easily set up via the Azure PowerShell that installs with the Azure SDK. From a personal CDN to a RESTful API server, Cloud Services allow you to enhance your web and enterprise applications.
Windows Azure support of Node.js makes it possible for developers to create powerful back-end servers for web and mobile applications. The scalability of Azure and Node.js make for a perfect duo, allowing developers to easily scale applications without any changes to the code. That ease of scalability combined with the broad tools and resources provided by Microsoft makes Node.js an extremely attractive approach to building any network application.