+ All Categories
Home > Software > The Enterprise Case for Node.js

The Enterprise Case for Node.js

Date post: 16-Apr-2017
Category:
Upload: nodejsfoundation
View: 25,600 times
Download: 3 times
Share this document with a friend
39
The Enterprise Case for Node.js V1 July, 2016
Transcript
Page 1: The Enterprise Case for Node.js

The Enterprise Case for Node.js

V1 July, 2016

Page 2: The Enterprise Case for Node.js

Table of Contents

• Node.js Introduction

– Technology

– The Node.js Foundation

– Industry Backing

• Selling Node.js in Your Company

– Performance

– Customer Experience

– Productivity

• Conclusion

• Appendix A: Node.js Enterprise Tooling and Services Directory

Page 3: The Enterprise Case for Node.js

Node.js Introduction

Page 4: The Enterprise Case for Node.js

Node.js Growth

By many measures, Node.js is the fastest growing and most significant development

language right now. With 4 million users and an annual growth rate of 100%, Node.js is

truly everywhere.

4

Page 5: The Enterprise Case for Node.js

Technology Introduction

Node.js is the JavaScript runtime of choice for high-performance, low latency applications, powering everything from enterprise applications, robots, API engines, cloud stacks and mobile websites.

It uses an event-driven, non-blocking I/O model that makes it lightweight, efficient and highly-performant even under extreme load.

Page 6: The Enterprise Case for Node.js

Node.js In Demand

• Node.js is the only language listed on UpWork’s Top 10 most wanted IoT Developer Skills

• Node.js ranks among the Top 10 languages for full stack, front end and back end developers surveyed by StackOverflow in their 2016 developer survey

• Only Android ranks higher than Node.js in Most Wanted* tech by StackOverflow

* % of developers who are not developing with the language or tech but have expressed interest in

developing with it

Page 7: The Enterprise Case for Node.js

Node.js Foundation - A Linux Foundation Project

Mission: Enable widespread adoption and help accelerate development of Node.js and other related modules

7

Page 8: The Enterprise Case for Node.js

Node.js Foundation Members

8

Page 9: The Enterprise Case for Node.js

Node.js Vendor Ecosystem

Node.js Enterprise Services

Node.js Enterprise

Tooling

See Appendix A for service and tooling directory

Page 10: The Enterprise Case for Node.js

Node.js And Performance

Page 11: The Enterprise Case for Node.js

Node.js and Performance

Under high load (high concurrency), Node.js maintains high throughput and low latency

Three factors underpin Node’s high performance:

1. The V8 JavaScript engine, upon which Node.js is based, is highly optimized for performance by Google, who continues to invest heavily in advancing V8’s performance

2. JavaScript/Node.js events are lightweight, while threads are heavyweight. Consequently, Node.js is inherently more performant under load than monolithic designs (this article offers a nice recap)

3. Node.js is container-ready, which simplifies the move to cloud and microservices architectures (Richard Rodger, author of The Tao of Microservices, explains)

Page 12: The Enterprise Case for Node.js

Node.js and Performance

In moving from monolithic Java server architecture to Node.js, Netflix improved performance and reduced infrastructure costs• Reduced start-up time from 40 mins to sub 1 minute• Reduced the number of EC2 instances on Node compared with the legacy Java

stack by 75%, while serving the same number of subscribers at lower latencies

Page 13: The Enterprise Case for Node.js

Node.js and Performance

Rolled out global site rebrand in 1 hour

Page 14: The Enterprise Case for Node.js

Node.js and Performance

PayPal’s Node.js app doubled the number of requests per second and reduced response times by 35% versus previous Java version

Page 15: The Enterprise Case for Node.js

Node.js and Performance

Groupon’s Node.js implementation reduced page load times by 50%

Page 16: The Enterprise Case for Node.js

Node.js and Performance Diagnostics

Also see best Practices from Netflix’s @yunonx on maintaining high performance in large-scale production Node.js Applications

Building Node.js Applications for visibility, live tracing and debugging is aided by advancements in Node.js Core and in the ecosystem around it (e.g. Restify, Bunyan, etc.)The Node.js Core Diagnostics Working Group is working to ensure Node.js provides a set of comprehensive, documented, extensible diagnostic protocols, formats, and APIs to enable tool vendors to provide reliable diagnostic tools for Node.js

Work is divided into the following domains:• Tracing• Profiling• Heap and Memory Analysis• Step Debugging

Page 17: The Enterprise Case for Node.js

Node.js and Performance Debugging

For problems you can’t diagnose expediently, or issues such as memory leaks, do post-mortems

1. Capture a core dump of running process at any time in production to capture all of the state of the process and then reboot it

2. There is now a broad set of tools that can be used: mdb_v8, llnode and IBM's IDDE3. This methodology offers Node.js Engineers several advantages, including

a. Allows services to stay up while developers investigate the problem (increased availability)

b. Allows several developers to investigate the same problem not at the same time (easier collaboration)

c. Allows developers to investigate issues at any time that is convenient for them (easier workflow)

Also see the Node.js Core Post-Mortem Working Group and best Practices from Netflix’s @yunonx on maintaining high performance in large-scale production Node.js Applications

Page 18: The Enterprise Case for Node.js

Node.js And Customer Experience

Page 19: The Enterprise Case for Node.js

Node.js and Customer Experience

• Today’s digital consumers expect all available data to be leveraged in App instantly to make their experience effortless

• This means an API-first strategy

• No language is better than Node.js for taking advantage of the explosion of API data

19

Page 20: The Enterprise Case for Node.js

Drivers of the API Era

Available Data

CX Focus

Device / End Point Explosion

20

Page 21: The Enterprise Case for Node.js

APIs on the Rise

Source: Programmable Web Source: Apigee, The State of APIs 2016

21

Page 22: The Enterprise Case for Node.js

Node.js Excels for Data-intensive Apps

• The richer an app’s API layer becomes, the better suited it is to Node.js

• Node.js apps can handle thousands of concurrent connections

• Open-source modules provide performant DB interaction out of box

• SDKs available for consuming most third-party services and applications

Many mlns of rides/day

75 mln membersStreaming 100+

mln hrs/day

15 mln mobile profile views per

day

22

Page 23: The Enterprise Case for Node.js

Node.js And Productivity

Page 24: The Enterprise Case for Node.js

Node.js and Productivity

Node.js for frontend and server side, and on devices where appropriate, can increase developer productivity and improve developer job satisfaction

These improvements translate directly to the bottom line

Sources: PayPal, Capital One, Skycatch, Fusion Marketing

Page 25: The Enterprise Case for Node.js

Node.js and Productivity

Improved developer satisfaction means less turnover, a better employer brand and easier recruitment

• Node.js Everywhere increases developers’ internal mobility, thus heading off one of the top reasons developers leave - namely lack of new challenges/monotonous work/feeling stuck

• Node.js Everywhere also appeals to many developers’ desire to use more JavaScript, which is described as a fun and flexible language

Page 26: The Enterprise Case for Node.js

Node.js and Productivity

Node.js Everywhere makes it easy for developers to implement features end-to-end, reducing context switches and handoffs between front-end and back-end developers

Prior to replacing Java with Node.js on the server side, the Netflix UI team had to write many things twice and maintain separate toolchains

Page 27: The Enterprise Case for Node.js

Conclusion

Node.js has helped transform the app dev landscape at leading organizations like Netflix, Capital One, Walmart, NASA, GoDaddy, PayPal - helping them keep pace with innovation in APIs, Web, mobile, devices and customer expectations

With its strong ecosystem and massive repository of non-blocking modules, Node.js can help your organization too

Page 28: The Enterprise Case for Node.js

Thank you!www.nodejs.org

Page 29: The Enterprise Case for Node.js

Appendix ANode.js Enterprise Services and Tooling Directory

Page 30: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URLIBM http://IBM.com

Product or Service Description & URL

API Connect http://ibm.com/apiconnect

Product or Service CategoryPlatform

Benefits for Enterprises running Node.js and Examples

IBM API Connect offers features to manage the API lifecycle, including:Create—create high-quality, scalable and secure APIs for application servers, databases, enterprise service buses (ESB) and mainframes in minutes.Run—take advantage of integrated tooling to build, debug and deploy APIs and microservices using the Node.js or Java.Manage—create and manage portals that allow developers to quickly discover and consume APIs and securely access enterprise data, and monitor APIs to improve performance.Secure—Administrators can manage security and governance over APIs and the microservices. IT can set and enforce API policies to secure back-end information assets and comply with governance and regulatory mandates.

Page 31: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL

Joyent www.joyent.com

Joyent builds open source, container-native software to automate modern data centers. We use that software to operate the Triton Cloud service. We also make that software available to enterprises that want to operate their own private clouds.

Product or Service Description & URL

Triton DataCenter is a management platform that makes container management, including cluster management, composition, deployment, naming, logging and networking, efficient and easy.

Product or Service Category

Containers as a Service

Benefits for Enterprises running Node.js

As the original corporate steward of Node.js, we know microservices and how to operate them at scale. Enterprise support for Node.js is included with Triton.

Page 32: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URLnearForm www.nearform.com

Product or Service Description & URL

Node.js Training, Consulting and Co-development

Product or Service Category

Service

Benefits for Enterprises running Node.js

We engage with our client’s technical people throughout the development process to help them learn Node.js at a deep and integrated level. We also support them with custom training programs. They work alongside us as part of our project team throughout the build.

Page 33: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL Nodesource - https://nodesource.com

Product or Service Description & URL

N|Solid - https://nodesource.com/products/nsolidThe premier enterprise-grade Node.js platform

Product or Service Category

Tools

Benefits for Enterprises running Node.js and Examples

Benefits for Enterprises running Node.js and ExamplesN|Solid -

Rapidly resolve performance problems

Protect customer data from vulnerable packages and unauthorized code

Drive performance and operational efficiency at scale

Page 34: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL Nodesource - https://nodesource.com

Product or Service Description & URL

N|Support - https://nodesource.com/services/nsupportNode.js support offering that helps companies establish and sustain enterprise-grade Node.js development and operations

Product or Service Category

Service/Support

Benefits for Enterprises running Node.js and Examples

N|Support -The NodeSource N|Support team extends the Node.js capabilities of your Development and DevOps teams, to protect your project and serve your team when it matters.

Page 35: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL Red Hat Inc. www.redhat.com

Product or Service Description & URL

Red Hat Mobile Application Platform (previously FeedHenry) https://www.redhat.com/en/technologies/mobile/application-platformSupports an agile approach to developing, integrating, and deploying enterprise mobile applications whether native, hybrid, or on the web

OpenShift - https://www.openshift.comPlatform-as-a-Service (PaaS) that allows developers to quickly develop, host, and scale applications in a cloud environment. With OpenShift you have a choice of offerings, including online, on-premise, and open source project options.

Product or Service Category

Online, Hosted or on prem. PaaS and MBaaS

Benefits for Enterprises running Node.js and Examples

For more than a decade, Red Hat® solutions have been trusted in the world’s most rigorous datacenters, handling everything from the critical to the routine. Red Hat subscriptions give you access to secure, enterprise-ready software, updates, information, and support services to keep your business running securely.

Page 36: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL RisingStack - risingstack.com

Product or Service Description & URL

Trace by RisingStack is a Node.js specialized performance monitoring solution. It allows developers to visualize requests and messages between microservices, databases, and external APIs - and get detailed information for debugging by looking at stack traces. Trace also provides unique event loop and garbage collector metrics as well as CPU, memory usage, response time and throughput data. Trace lets to define alert levels and sends notifications instantly via Slack, Pagerduty, Email or Webhook. - trace.risingstack.com

Product or Service Category

APM, Infrastructure Visualization, Debugging, Microservice Monitoring

Benefits for Enterprises running Node.js and Examples

Trace reduces the time engineers need to spend on analyzing logfiles and provides more time for building features. It enables enterprises to ship products faster and saves a significant amount of capital dedicated to development.

Page 37: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URL Sauce Labs | www.saucelabs.com

Product or Service Description & URL

Sauce Labs cloud-based platform helps developers test native & hybrid mobile and web applications across 700+ browser / OS platforms, including iOS, Android & Mac OS X. Sauce supports Selenium, Appium and popular JavaScript unit testing frameworks, and integrates with all of the top programming languages, test frameworks and CI systems. With built-in video recording and screenshots of every test case, debugging tools, and secure tunneling for local or firewalled testing, Sauce makes running, debugging and scaling test suites quick and easy.

Product or Service Category

Cloud-based testing infrastructure for automated & manual front-end testing using Selenium or Appium.

Benefits for Enterprises running Node.js and Examples

One of the key benefits of Selenium and Appium is that tests can be written in any language – development teams can use JS end-to-end, creating their apps in JS, writing front-end unit tests in JS, and using Node.js for backend services as well as functional testing via Selenium and Appium - JS all the things!

Sauce Labs then provides a cloud-based infrastructure to run these tests – in parallel – across hundreds of different platform, device and OS combinations, removing the bottleneck usually associated with software testing.

Page 38: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URLStrongLoop, an IBM Company www.strongloop.com

Product or Service Description & URL

LoopBack https://strongloop.com/node-js/loopback-framework/

Product or Service Category

Framework

Benefits for Enterprises running Node.js and Examples

LoopBack is a highly-extensible, open-source Node.js framework that enables you to:

● Create dynamic end-to-end REST APIs with little or no coding.● Access data from major relational databases, MongoDB, SOAP and REST APIs.● Incorporate model relationships and access controls for complex APIs.● Use geolocation, file, and push services for mobile apps.● Easily create client apps using Android, iOS, and JavaScript SDKs.● Run your application on-premises or in the cloud.

Page 39: The Enterprise Case for Node.js

Node.js Enterprise Ecosystem

Company Name & URLYLD - www.yld.io

Product or Service Description & URL

Node.js Software Engineering, Consulting and Traininghttps://www.yld.io/what-we-doYLD changes the way companies think by delivering digital, technological and cultural transformation that enables them to succeed, through high quality Node.js software engineering, consultancy and training.

Product or Service Category

Services

Benefits for Enterprises running Node.js and Examples

We use open source technologies like Node.js and Docker to help build our client’s infrastructures, we help them strengthen their software engineering culture and create the agility necessary to compete in the market, and are responsible for some of the largest Node.js solutions in production today.


Recommended