nodifying the enterprise - prince soni, to the new
TRANSCRIPT
Nodifying The EnterpriseBy: Prince Soni
Agenda
JavaScript - The Next Generation Language
An Overview of Node.js Adoption
Evolution of application with Node JS
Node JS for Enterprise • How Enterprises Benefit from Node JS • Enterprise Toolkit - At-a-Glance • Security With Node JS • Node JS Everywhere - Few Use Cases
Limitations of Node JS
Raspberry pie, Intel, ArduinoNode.js, Cylon.js, Johnny5,
Node red
Chrome, Safari, Firefox, IEJQuery, Angular, React,
Polymer, Ember
JavaScript - The Next Generation Language
Landscape of JavaScript language being used in different areas of software development
Node JSExpress, Sail, Hapi, Koa,
Strongloop
Android, IOS, WindowIonic, Cordova, IBM
Worklight
Android, iOSReact Native and Native
Script
Window, Mac, UbuntuNw.js, Electron, React
Native
An Overview of Node JS Adoption
NPM is the world's largest module management system that publishes more than 450 modules/per day.
Node JS is being used widely by more than 10,000 organization across 200 countries.
Accordingly the 2016 Node.js User Survey(35% from US, 22% from Continental Europe, 6% India, 6% UK)
64 % developers runNode.js in production
62% do both Frontend and Backend development
9% do Frontend, Backend and IoT development
The 2016 Node.js User Survey states Node.js is the fastest growing and most significant development language with an annual growth rate of 100% and has 3.5 million users.
Evolution of Applications With Node JS
LightweightServer & Data
API Apps
Real-Time and Socket Apps
Enterprise Apps Desktop & System Apps
Robotics and IOT Apps
How Enterprises Benefit fromNode JS?
Challenges
• Changing consumer demands with market fluctuation
• Incorporating customer feedback with rapid turn around time
• Fixing critical issues and upgrading to latest tools
RAPID INNOVATION & DELIVERY
Solution
• Rapid software development with over 350k node modules available in NPM
• Fullstack environment makes both frontend & backend easy • Easy versioning support and integration to business solutions
How Enterprises Benefit fromNode JS?
Challenges
• Managing codes with increasing complex user stories
• Upgrading / re-structuring single module of application
• Re-deploying application for small changes
SIMPLIFIED MAINTENANCE & MODIFICATION
Solution
• Modular application development with NPM and microservice structure • Single module upgradation and deployment using microservices architecture
• Advent of enterprise development module like Seneca and N|Solid
How Enterprises Benefit fromNode JS?
Challenges
• Managing long term support for development
• Compatibility with upcoming release
Long Term Support
Solution• Easy Versioning support
• Long Term Support (LTS) plan with each release actively supported for 18 months followed by 12 month of additional maintenance
Enterprise Toolkit - At-a-Glance
Node JS is backed by number of enterprise level Tools and frameworks
IDEWebStorm, Atom,
Sublime Text
FrameworksHapi.js , Sail.js, Koa.js, StrongLoop
CI / CDTravis. Jenkins, CircleCI
Monitoring / Process ManagementNew Relic PM2, Forever
Build ToolGrunt, Gulp, Webpack
Testing / LoggingMocha, Istanbul, Coveralls
Winston, Morgan
Security With Node js
DOMAIN – MEDIA (NetFlix)
ObjectiveBuilt high performance micro-service based system for serving video services
Why Node?• Lightweight, modular, fast and less code redundancy• Micro-service based structure• Common language on server and client
Achievement• App startup time was reduced by 70%• Universal app with frontend and backed driven by Javascript• Single page application, and with a rich user experience
Node js Everywhere
*Reference
DOMAIN – SPACE RESEARCH (NASA)
ObjectiveBuilt a reliable system for Astronauts Safe and Data Accessible in real-time
Why Node?• Ease of development and faster development cycle• Perfect match for cloud based database system• Micro-service architecture with NPM and Docker
Achievement• Easy and faster access of cloud based data• Data retrieval time reduced by 300%
Node js Everywhere
*Reference
Node js Everywhere
DOMAIN – TRANSPORTATION (UBER)
ObjectiveTo build fast real-time transportation system that enable customers to interact with drivers; generate an automatic bill for customer based on their credit cards
Why Node?• Non Blocking asynchronous I/O request with non blocking single thread• Instant publishing of changes without restarting system• Active open source community with active module contribution
Achievement• Handles 2 million request/sec• Highly scalable performance oriented system• Publishes instant update with zero offline
*Reference
Limitations of Node JS
Limitations of Node JS
Heavy server side computation/Processing
Application involving multi threaded architecture
Interaction with relational database
No Synchronous programming
Reach out to me:
Email : [email protected] : https://www.linkedin.com/in/prince-soni-32b830100GitHub : https://github.com/princesoni1989Twitter : https://twitter.com/pSoni1989