from devops to noops: 10 cloud services you should be using
DESCRIPTION
A couple of years ago building an application meant building the infrastructure to support the application. Typically this entailed installing a database, an app server and often a messaging server and email server; all tedious preamble for actually building an application. Now you have free access to these infrastructure services on the web, but which ones should you use. This session will pick 10 services available today such as MongoHQ, Twilio and DropBox. With no infrastructure for you to set up for your application you can now start coding you applications immediately; all Dev no Ops! This session will also provide the attendee with information on how to find new APIs, what to be looking for and how to use them in your next application.TRANSCRIPT
![Page 1: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/1.jpg)
DevOps to NoOps10 cloud services you should be using
Ross Mason, MuleSoft
@rossmason, @mulejockey
![Page 2: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/2.jpg)
About Me
![Page 3: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/3.jpg)
Agenda
• Impact of APIs• Top 10 you should be looking at• Integrating with APIs
![Page 4: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/4.jpg)
The Impact of APIs
![Page 5: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/5.jpg)
API Proliferation
Source: Programmable Web
![Page 6: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/6.jpg)
The traditional 3-tier architecture
6
Presentation Tier
Middle Tier
Data Tier
Client
App Server
HTML
Database
![Page 7: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/7.jpg)
…is being decomposed
7
Middle Tier
Data Tierdatabase
Client
Server
Data
JSON / XML JSON / XML
Presentation TierPresentation Tier
![Page 8: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/8.jpg)
…is being decomposed
8
Middle Tier
Data Tierdatabase
Client
Server
Data
JSON / XML JSON / XML JSON / XML
Presentation TierPresentation Tier 3rd party Apps
![Page 9: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/9.jpg)
…is being decomposed
9
Middle Tier
Client
Server
Data
JSON / XML JSON / XML JSON / XML
Presentation TierPresentation Tier 3rd party Apps
Data TierdatabaseSaaS, Infrastructure Services,
Social Media APIs
API API APIAPI
API
API
API
APIAPIAPI
API
API
![Page 10: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/10.jpg)
Platform Shift
Traditional Application Environments
Application
Database
Web/App Server
Operating System
![Page 11: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/11.jpg)
Platform Shift
New Application Environments
Application
Database
Web/App Server
Operating SystemIaaS
Application
PaaS
![Page 12: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/12.jpg)
Technology Shift
Traditional Application Environments
Application
Database
Web Server
Operating System
Application
Business Logic
UI
Data
Security
![Page 13: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/13.jpg)
Technology Shift
Newer Application Environments
Application
Database
Web Server
Operating System
Application
Business Logic
UI API
Data
Security
Integration
![Page 14: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/14.jpg)
Technology Shift
Application Decomposition
Application
Business Logic
UI API
Data
Security
Integration
![Page 15: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/15.jpg)
Top 10 APIsAPI Description Category Mashups
Google Maps Mapping service Mapping 2278
Twitter Microblogging Social 622
YouTube Video sharing and search Video 585
Flickr Photo sharing Photo 583
Amazon eCommerce Online retailer Shopping 396
Facebook Social networking Social 301
Twilio Telephony service Telephony 290
eBay Online auction marketplace Shopping 213
Last.fm Online radio service Music 201
Google Search Search services Search 175
Source: ProgrammableWeb.com, Sept 2011
![Page 16: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/16.jpg)
Top 10 Infrastructure APIs
![Page 17: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/17.jpg)
10.
• MySQL Database as a Service• Direct replacement for MySQL• Alternatives: Amazon RDS, Rackspace, Heroku• API: REST or SOAP for provisioning and controlling the
DB instance
• So What?– Fully managed, auto-scale, HA– Management tools built-in– API makes the service scriptable
![Page 18: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/18.jpg)
9. S3
• File System as a Service• Simple API for storing large and small files• Alternatives: RS Cloud Files, CloudLayer Storage• API: REST, SOAP or BitTorrent
• So What?– Many Apps need file storage– Unlimited data– Leverage the Amazon global network, CDN support
![Page 19: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/19.jpg)
8.
• Logging as a Service• Manages logs, enables easy search and navigation • Alternatives: Splunk• API: REST, Syslog for data collection
• So What?– Easy to set up, centralized view of App logs– No more ssh-ing to different boxes and tailing logs– Analytics as standard
![Page 20: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/20.jpg)
7.
• Email as a Service• Replace email infrastructure, its like normal email but
way better• Alternatives: Postmark• API: REST, SMTP
• So What?– Set up in minutes no need to run an email server– bulk, delivery management, analytics– Web Hooks Event API
![Page 21: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/21.jpg)
6.
• MongoDB as a Service• Create a MongoDB in seconds, continue writing your
application• Alternatives: Couch One• API: MongoDB client API
• So What?– Fully managed, auto-scale, HA– Management tools built-in– Code compatible with MongoDB
![Page 22: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/22.jpg)
5. Airbrake
• Error Management as a Service• collects errors generated by other applications, and
aggregates the results for review.• Alternatives: ?• API: REST
• So What?– Interesting approach to error management, no need to hit
the logs– See errors in real-time, track and fix
![Page 23: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/23.jpg)
4.
• Application Security as a Service• User account management, authentication, and
access control in your application• Currently in private Beta• API: REST
• So What?– Every app needs user security, avoid rolling the same
code over and over
![Page 24: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/24.jpg)
3.
• Publish / Subscribe Messaging as a Service• Real-time, global messaging for cloud and mobile apps• Alternatives: Pusher, Amazon SNS• API: REST
• So What?– Amazingly quick; as about real-time as the web gets– Asynchronous, streaming API– Cheap even for millions of messages
![Page 25: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/25.jpg)
2.
• File Sharing as a Service• Share files between all your devices and friends/co-
workers• Alternatives: Box.net, SpiderOak, Wuala, etc
• So What?– Great for content delivery, service handles all
synchronization issues– Good way to integrate mobile with desktop and web– (Almost) everyone has it
![Page 26: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/26.jpg)
1.
• Telephony as a Service• Build text/sms and voice apps really easily• Alternatives: Tropo
• So What?– This stuff was hard before Twilio came along– Integrate text/sms into your apps for alerting, udating,
user confirmation, etc– Easy to create voice access to data in an app (i.e. account
balance)
![Page 27: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/27.jpg)
The API Challenge
![Page 28: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/28.jpg)
All APIs are not equal
• Hard to work with different APIs– Different approaches– Different security schemes– Different data formats– Different ‘interpretations’ of REST
• Lots of custom code in your app
![Page 29: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/29.jpg)
iPaaS: Don’t clutter your app
Your Killer App Integration Layer Cool Stuff
integration PaaS
![Page 30: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/30.jpg)
Benefits
• Configuration approach to APIs• Handled for you:
– Security (OAuth, SAML, Basic) – Session Management– Streaming– HTTP Callbacks
• Consume and invoke multiple services• Retries, Error handling• Decouple, keep your application code clean
![Page 31: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/31.jpg)
Quick Demo
• Listen to Salesforce Chatter API for messages
• ‘#now’ tag in Chatter messages get filtered
• Calls Twilio API to send an SMS to the user’s
phone
31
![Page 32: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/32.jpg)
The Flow
32
<twilio:config name="twilio-default" accountSid=”xxxxxxx" authToken=”xxxxxx"/>
<sfdc:config name="salesforce-default" username=”xxxxx" password=”xxxxx"/>
<flow name="sendSmsNotifications">
<sfdc:subscribe-topic config-ref="salesforce-default” topic="/SMSNotifications"/>
<logger level="INFO" message="#[payload]"/>
<regex-filter pattern="\#now"/>
<twilio:send-sms-message config-ref="twilio-default"
accountSid=”xxxxxxx"
from=”+14086457888"
to="#[map-payload:To__c]"
body="#[map-payload:Text__c]"/>
</flow>
![Page 33: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/33.jpg)
Summary
• APIs are becoming part of our application architecture
• All APIs are different making them hard to consume
• Coding directly to APIs clutters the application and creates a dependency (tight-coupling)
• iPaaS can do the integration heavy lifting, decouple your app from the APIs it consumes
![Page 34: From DevOps to NoOps: 10 cloud services you should be using](https://reader035.vdocument.in/reader035/viewer/2022070315/554fb1bfb4c9057b298b513c/html5/thumbnails/34.jpg)
Questions, Ideas, Comments?
• Mule iON free account : http://muleion.com
• Twitter: @rossmason, @mulejockey
• Blog: http://blogs.mulesoft.org
• Company: http://mulesoft.com (we’re hiring!)