Node on Windows Azure

Embed Size (px)

Citation preview

PowerPoint Presentation

Node.js on Windows Azurehttp://weblogs.asp.net/shijuvarghese/1

Shiju Varghesehttp://github.com/shijuvar

About MeTechnical Architect at Cloud & Mobile COE, MarlabsMicrosoft MVPFocus on Cloud and Windows AzureEnthusiast on Agile/LeanBlogs at http://weblogs.asp.net/shijuvarghese

[email protected]@shijucvhttp://github.com/shijuvarhttp://weblogs.asp.net/shijuvarghese/2

AgendaIntroduction to Node.jsDemo on Node.jsNode.js on Windows Azurehttp://weblogs.asp.net/shijuvarghese/3

Case Study LinkedIn iPad AppOn the server side, our entire mobile software stack is completely built in Node. We use a ton of technologies at LinkedIn, but for the mobile server piece, its entirely Node-basedKiran Prasad,Director of Engineering, Mobile at LinkedInhttp://weblogs.asp.net/shijuvarghese/4

Result - LinkedIn iPad App The improvements the team saw were staggering. They went from running 15 servers with 15 instances (virtual servers) on each physical machine, to just four instances that can handle double the traffic. The capacity estimate is based on load testing the team has doneKiran Prasad,Director of Engineering, Mobile at LinkedInSource : http://venturebeat.com/2011/08/16/linkedin-node/

http://weblogs.asp.net/shijuvarghese/5

Who are using Node.jsLinkedInWalmartebayYahooMozillaRackspace Cloudhttp://weblogs.asp.net/shijuvarghese/6

What is Node.js

http://weblogs.asp.net/shijuvarghese/7

Building an HTTP Server in Node.js

http://weblogs.asp.net/shijuvarghese/8

What is Node.jsJavaScript on the Server!Built on Googles V8 EngineC libraries libev and libeio for event-driven (asynchronous) programmingEvent driven I/O server-side JavaScriptNon-Blocking I/ONot thread basedEfficient and highly scalable

http://weblogs.asp.net/shijuvarghese/9

Node.jsStarted in 2009 by Ryan DahlSponsored by Second most popular project on GitHub

http://weblogs.asp.net/shijuvarghese/10

NPM: Node.js Package ManagerPackage manager for nodeNpm command-line tool ships with Node.jsAllows you to easily add modules to your application11,200 Node modules currently availableUse through the command line: C:\nodejs> npm install express C:\nodejs> npm install socket.io C:\nodejs> npm install azure

http://weblogs.asp.net/shijuvarghese/11

Node.js is good for..Real-time, Collaborative AppsJSON based REST APIsSingle Page Apps, Client-oriented Web UIsCustom network servicesMobile Apps, Next-Gen HTML 5 AppsNetwork Appshttp://weblogs.asp.net/shijuvarghese/12

G 12

Node.js is not good forCPU-bound Appshttp://weblogs.asp.net/shijuvarghese/13

Node.js on WindowsNative node.exe IISNode (https://github.com/tjanczuk/iisnode) a native IIS 7.x module that allows hosting of node.js applications in IIS Most Node modules supported as isPerformance on par with Linux implementationhttp://weblogs.asp.net/shijuvarghese/14

Windows Azurehttp://weblogs.asp.net/shijuvarghese/15

http://weblogs.asp.net/shijuvarghese/16

Deployment ToolsWindows Azure PowerShell for Node.jsGit, TFS, FTP Web MatrixCloud9 IDE

NPM for Windows AzureNode.js driver for Sql ServerGreat Support for MongoDB

Windows Azure WebsiteQuick provisioning and deployment via FTP, Git, TFS, WebDeployASP.NET, PHP, or node.jsShared but seamless upgrade to more instances, dedicatedManage via portal or cross-platform command-line toolingFree (up to 10 websites, shared)

http://weblogs.asp.net/shijuvarghese/17

DEMOHello World ProgramNode.js Web App using Express and JadeDeploy Node.js App to Windows Azure Web Sitehttp://weblogs.asp.net/shijuvarghese/18

QUESTIONS?

http://weblogs.asp.net/shijuvarghese/19

Thanks http://weblogs.asp.net/shijuvarghese/20Source Codehttps://github.com/shijuvar/NodeOnAzurehttps://github.com/shijuvar/RESTNode