Upload
shubhra-kar
View
378
Download
0
Embed Size (px)
DESCRIPTION
StrongLoop solution for building APIs in Node.js
Citation preview
API Tier for the new Front-edge
Shubhra Kar Apr 2014
Agenda
Why are we hereStrongLoop OverviewNode.js and DevOps training scheduleNode.js certification (SCND)Little bit about our training partner – OlinDataTraining kick-off
“If you’re not fast, you’re dead” - Jack Welch
3
Mobile is the new interface
One billion consumers will have smartphones by 2016. US consumers alone will own 257 million smartphones and 126 million tablets.
In 2016, 350 million employees will use smartphones — 200 million will bring their own (BYOD). Employees pay for more than half of the devices and data plans used for work.
Mobile spend will reach $1.3 trillion (35% of tech spend) as the mobile apps market reaches $55 billion in 2016. Tablet and smartphone apps, at average price of $2.43, will grow explosively to $56 billion in 2015.
Business spending on mobile projects will grow 100% by 2015. Most major businesses now have a tablet strategy for sales reps. IT professionals will respond to the onslaught by diverting IT budgets to mobile technology.
Mobile commerce is expected to reach $31 billion by 2016, 7% of overall eCommerce, representing a compounded annual growth rate of 39% from 2011 to 2016.
Mobility is (obviously) a big deal . . .
(source Forester Research)
What else is related to this trend ?Mobile App Strategy
Big Data & Embedded (M2M)
10%
60%
30%
Enterprise Mobile
NativeHybridMobile Web
40%
40%
20%
Consumer Mobile
NativeHybridMobile Web
Full Stack JavaScript
Today’s enterprise reality
RMI Objects
MessagingService
BI Tools
Business Rules
FileSystem
ESB
WebInterfac
e
ContentDatabase
DataWarehouse
FinancialsMainframe
Web/WAP
Interface
EJB
VirtualServic
e
Routing
Service
SOAP
CRM App
Products
Collaboration
AppPortal
HelpEngine
BPMSLegacy
Infrastructure
Internal
External CloudPartners
# of Interconnected Components
# of Inter-dependent Teams
# of Heterogeneous Technologies Rate of Change
So how ready are we for the new UX ?
Everyone understands the problem! No one has an answer, until now!
Well, it appears to me that the
problem is on your end.
And thus was born the most revered
phrase in tech support.
What needs to be built ?Front Edge
Thousands to Millions of devices connecting to business APIscreating the new user experience
APIs for each device, each app, each screen. Optimized for bandwidth & battery, adjusting to each device’s capabilities
11
Highly concurrent
Scriptable (the teams already know JavaScript)
Giant ecosystem of reuseable components (just like in the browser)
Keeps device-specific APIs from polluting core SOA
Node.js is the perfect match
Vast open-source community (70 K re-usable modules)Reduce development time by 50% or moreReuse existing UX toolsLow latency - MobileEvent-driven and fast by design: 50x fasterNon blocking, high throughput: helps scale 20x
Why do 3 million developers download every release of Node.js
Some performance stats
Hardware UtilizationBenchmarking
Performance Outcomes : counting “faster” endpoints per application
Some users of Node in mainstream enterpriseTransportation Gaming Chat & Social
Analytics & Big Data
Multi-media
Advertising Financial
Wearable & Embedded/Sensor Retail & Consumer
Tech & Cloud
Exposing enterprise
data to these chatty, highly concurrent, mobile and web apps in form of an
easily consumable
API helps create “Rich Apps”, useful for genuine
business needs.
StrongLoop Stack
Evolution of application development & service models
AppServerDC
AppServer IaaS
PaaSmBaaS
API Server
Speed of DevelopmentCost, Control, Data
1st Generation mBaaS - Parse, StackMob, Kinvey, Apigee, etc
mobile/web clients
social & analytics
JSON APIREST API
APIXMLSQL
SOAPEtc.
mBaaS
API tier(Java, Ruby, PHP, C#)
MongoDB, mySQL
tunnels
Enterprise
LoopBack: Industry’s 1st Open source (Node.js) API Server
Enterprise – On Premises / Private
It’s fast and steady ! : 0-60 in a mature sprint
curated modules, support, access to Core teamprivate registry, audit, whitelisting, certification
API Tier
Tools &
platform
Marquee FeaturesMobile SDKs Pre-Built Mobile Services ORM – no SQL
Enterprise ConnectorsAuto API Engine API Security & Mgmt.
Sample backend services creation in loopback
How it works – Create or consume multiple data sources
How it works – Data discovery & relationship modeling
How it works – JSON API generation
How it works – API security configuration
Automatic Data modeling and REST API publishing
Mobile SDKs (iOS SDK) for remotable integration
Realizing a full-stack JavaScript solutionProject
UX Design
Develop
Mobile App Test / Emulation
Create ScaffoldingDefine base CSS Define componentsUse JS widgets
Create Scaffolding Define ModelsDefine ControllersDefine Views
Compile and Build
Define Filters
UserDeviceFileGeoLocationNotification
Define DirectivesConfigure Routes
Model the DataGenerate REST API
Connect to Data-sources (Oracle, SOAP, Mongo)
Setup Services
Debug
Generate Deployable App
Monitor frontend performanceOptimize (Log Analytics & scale)
Profile client-side
Configure API Security
Mobile App Mgmt.
Create UI & styling Arch. & binding Access Native Integrate Existing Data and Services
mBaaS Test / Emulation
Profile server-side
Deploy to local/PaaSMonitor backends performance
Optimize (Usage Analytics, Crash Reporting )
BLE
Node.js challenges for EnterpriseLack of best practicesNo enterprise versionWeak tool chains & monitoringMissing production-class features:– Auto-scaling– Certified run-time– Event/error management– Root cause tools
30
StrongLoop Backs Node
Wrote most of the features & fixes in v0.10 and 0.12– Including over 60% of the C/C++ code
Implemented custom work for clients in core5 active core authors – Joyent has 1Maintain 50+ modules (e.g. libuv, debugger, profiler & Oracle DB driver)
StrongLoop Node Platform
① Multi-platform (Windows, Unix, Solaris, Mac) support② On-premises, private or public cloud support③ Certified Node.js curated modules and ecosystem④ Commercial Enterprise supported, security updates⑤ Configurable and extendable⑥ Most popular node modules, curated modules, private
NPM⑦ Access to Node.js Core team⑧ SLAs and Premium support hotline
Node.js support (Sample modules set)
32
Node.js Core
strong-module-loader
strong-cluster-connect-
store
strong-cluster-control
SL-Config
Loopback Strong-mq
strong-task-emitter Engine.io Mongoose
Strong-agent
strong-cluster-
socket.io-store
strong-config-loader
Request
Node-heapdump
Asynch
node-inspector
Passport
Strong-remoting
Q
EJS
Express
Connect
Socket.IO
Reggie Postgres Connector
Oracle Connector
SQL ServerConnector
MongoDBConnector
REST Connector
In-Memory connector
LIBUV
V8 Profiler
DevOps Tools - Private Registry
Strong Registry
npm client
npm client
public npmjs
registry
Other upstream registries
metadata packag
es
indexes
• white/black list• audit
• security• cache
Pluggable Stores
① Private & multi-registry② On-premises, private or
public cloud support③ Module Whitelisting④ Audit⑤ Configuration Mgmt.⑥ CI and Build Mgmt.
DevOps Tools – Debugging and Profiling
DevOps Tools - Error Detection
DevOps Tools – Runtime Mgmt. & Dynamic Scaling
DevOps Tools - Memory Profiling and Leak Detection
DevOps Tools - Memory Leak Analysis
DevOps Tools - CPU profiling and hot spot detection
DevOps Tools - Transaction and end-point tracing
DevOps Tools - Performance Monitoring
DevOps Tools - Performance Monitoring
DevOps Tools - Alerts
DevOps Tools - Open Data API
What’s next ?Visit the StrongLoop website to learn more about Node and mobile
http://strongloop.com
Open Source API tier (Loopback) http://strongloop.com/mobile-application-development/loopback/
DevOps (StrongOps) http://strongloop.com/node-js-performance/strongops/
Install StrongLoop in a few simple steps to get started http://strongloop.com/get-started/