Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)

João Parreira
João ParreiraCTO for Realtime Framework at Realtime.co
Building collaborative HTML5 apps
using a backend-as-a-service
João Parreira

CTO for Realtime Framework
Realtime.co Cloud Services

Enterprise-grade services with global presence
Realtime.co Cloud Services
Used in TOP500 global websites
Realtime.co Cloud Services
Used in TOP500 global websites
Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)
Realtime.co

Backed by $100M funding
Backend?

Usually consists of three
parts: a server, an
application and a database.
Backend-as-a-Service?

How?

What to look for?

(an example would be nice ...)
Why? (10 reasons)
caching
sharding data sync
server provisioning
scale-in/scale-out

read replicas

cluster management
CAP theorem

load balancing
monitoring
Why? (tl;dr)
You love building great web apps.

You don’t want to waste time
operating highly available
distributed backend clusters.
A little story from the trenches
Babblr: a chat platform for Tumblr users
They are ...
frontend developers
JavaScript ninjas
not SysAdmins
friends of a guy with 600K+ Tumblr
followers 
They wanted to ...
develop a chrome extension in 4 weeks
keep their hands off servers
launch it with a bang
reach every Tumblr user
Their solution?
“do what you do best and outsource the rest”
find someone to do the heavy-lifting
use a backend-as-a-service

And so they did,
they went with Firebase.
They had great press
before launch
th 6PM PST. They launched!
May 7
One hour later ...

“… we got 34,000 downloads in a
matter of 30 minutes. And what
that did is that the servers couldn’t
handle that traffic …”
What went wrong?
But you promised me love
Promised me love, love, love

Cee Lo Green
What to look for?
Scalable
Mobile ready
Available at all times
Real-time enabled
Truly secure
Lack of scalability
will doom your success
 Remember Babblr:
 the prototype was easy to develop ...
 everything worked during private beta ...
 but production launch was a disaster!
 The backend service was not up to the task.
 It didn’t scale when Babblr most needed it.
Your success depends
on your backend scalability
 Understand how your BaaS provider scales . Ask.
 Never talks about ops/sec? Hummm ...
 Favour reserved capacity scaling models
 Look for scaling APIs and autoscaling processes
 Be suspicious of scale limited developer plans.
What is the provider affraid of?
Mobile is
the new black!
 ~40% of internet time now on mobile devices
 Native iOS and Android SDKs are mandatory

 Push notifications are a nice plus
(APNS, GCM)
 If you’re not flirting with native apps ...you should.
Your user is king
and he demands you’re available
 Data must be stored in multiple datacenters
 Periodic backups? Disaster Recovery != Business Continuity
 Rolling deploys must be the standard procedure
 Look for service status pages
 A 99,999% SLA is quite normal ...
don’t let anyone tell you otherwise.
Life supports real-time,
your app should too
 Collaboration is easier with real-time data sync
 No persistent connection to each user?
Sorry, no real-time for you.
 We’re talking about time, latency matters. Measure.
 Look for WebSockets. They’re new but they’re awesome
Thou shalt have
a truly secured app
 If there’s a security option... turn it on!
http://robinverton.de/blog/2013/08/27/becareful-when-going-client-only-firebase/

 Don’t trust the client …

 You should be able to say “who can do what”
Thou shalt have
a truly secured app
 Favour ACLs with CRUD permissions
 Look for SSL enabled providers
 Look for providers using certified infrastructure
 Look for cryptographic methods to authenticate users
and prevent unauthorized data access
Scalable
Mobile ready
Available at all times
Real-time enabled
Truly secure
BaaSWho’s who?
Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)
It’s Scalable
 Reserved capacity scaling model
 Different capacity for reads and writes
 Powered by Amazon DynamoDB
 Highly-scalable NoSQL database
 Shazam at SuperBowl 2012:
500.000 writes per second
It’s Scalable
(remember Babblr?)

Relaunched
with 120K+ users
It’s Mobile ready
 Objective-C SDK for iOS
 Java SDK for Android
 Push notifications with APNS+GCM
(in private beta, public in 3 weeks)
It’s highly-available
 100% uptime
(source: Site24x7)

 Multi-region
(US, EU, BR and ASIA)
 Data is saved in 3
different datacenters
It’s real-time enabled
 Data sync through WebSockets (with fallbacks)
 Powered by high-performance pub/sub message broker
 Simple event-based API:
var tableRef = storageRef.table("SomeTable");
tableRef.on("update", function(item) {
console.log(“Got an update:", item.val());
});
It’s secure
 Token-based authentication
 Permissions by ACLs with Create-Read-Update-Delete
 Roles for easier user management
 SSL encryption
It’s cost-effective
 Pay-as-you-go
 Starts from $1.5 USD/month (2 operations/sec)
 $500 USD developer offer including:
 10.000 concurrent users
 200GB storage
 10 million real-time notifications/month
One cloud backend, one API, multiple platforms

API

DynamoDB

Highly scalable

Real-time
notifications

API

Realtime Cloud Storage BaaS
API

API
(yes, with an example)
Building a collaboration
HTML5 app in 5 minutes
 Group chat
 Realtime Cloud Storage (backend)
 AngularJS (MVC framework)
 Nicolas Gallagher PURE CSS SPEECH BUBBLES (pizzazz)
http://nicolasgallagher.com/pure-css-speech-bubbles/
Developer resources
 https://github.com/jparreira/Html5DevConf
 https://github.com/realtime-framework/Storage
 http://framework.realtime.co/storage
Realtime Cloud Storage : use cases
A unified backend for modern applications across platforms











Collaboration applications
Multiplayer Online Games
Social networks streams
Digital Advertising
E-commerce
Publishing
Project Management
Chats and comments
Systems monitoring dashboards
The next big thing ...
@jtparreira
Thank you
1 of 44

Recommended

The Future of Digital Advertising with Cloud Computing - co-presented with Ad... by
The Future of Digital Advertising with Cloud Computing - co-presented with Ad...The Future of Digital Advertising with Cloud Computing - co-presented with Ad...
The Future of Digital Advertising with Cloud Computing - co-presented with Ad...Amazon Web Services
3.7K views61 slides
AWS re:Invent 2016: Fraud Detection with Amazon Machine Learning on AWS (FIN301) by
AWS re:Invent 2016: Fraud Detection with Amazon Machine Learning on AWS (FIN301)AWS re:Invent 2016: Fraud Detection with Amazon Machine Learning on AWS (FIN301)
AWS re:Invent 2016: Fraud Detection with Amazon Machine Learning on AWS (FIN301)Amazon Web Services
4.7K views35 slides
Real Time Bidding on AWS - Pop-up Loft Tel Aviv by
Real Time Bidding on AWS - Pop-up Loft Tel AvivReal Time Bidding on AWS - Pop-up Loft Tel Aviv
Real Time Bidding on AWS - Pop-up Loft Tel AvivAmazon Web Services
2.1K views22 slides
AWS re:Invent 2016: Predicting Customer Churn with Amazon Machine Learning (M... by
AWS re:Invent 2016: Predicting Customer Churn with Amazon Machine Learning (M...AWS re:Invent 2016: Predicting Customer Churn with Amazon Machine Learning (M...
AWS re:Invent 2016: Predicting Customer Churn with Amazon Machine Learning (M...Amazon Web Services
1.9K views31 slides
Digital Advertising on AWS - Pop-up Loft Tel Aviv by
Digital Advertising on AWS - Pop-up Loft Tel AvivDigital Advertising on AWS - Pop-up Loft Tel Aviv
Digital Advertising on AWS - Pop-up Loft Tel AvivAmazon Web Services
1.2K views24 slides
2017 Ad-Tech on AWS 세미나ㅣAccelerating Ad-Tech on AWS in Japan by
2017 Ad-Tech on AWS 세미나ㅣAccelerating Ad-Tech on AWS in Japan2017 Ad-Tech on AWS 세미나ㅣAccelerating Ad-Tech on AWS in Japan
2017 Ad-Tech on AWS 세미나ㅣAccelerating Ad-Tech on AWS in JapanAmazon Web Services Korea
3.2K views87 slides

More Related Content

What's hot

AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac... by
AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...
AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...Amazon Web Services Korea
3.7K views27 slides
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWS by
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWSUnlocking New Todays: Artificial Intelligence and Data Platforms on AWS
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWSAmazon Web Services
466 views54 slides
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017 by
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
12.3K views38 slides
16h00 globant - aws globant-big-data_summit2012 by
16h00   globant - aws globant-big-data_summit201216h00   globant - aws globant-big-data_summit2012
16h00 globant - aws globant-big-data_summit2012infolive
1.1K views23 slides
Google Cloud Fundamentals by
Google Cloud Fundamentals Google Cloud Fundamentals
Google Cloud Fundamentals Omar Fathy
63 views34 slides
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017 by
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017Amazon Web Services Korea
3.4K views20 slides

What's hot(20)

AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac... by Amazon Web Services Korea
AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...
AWS Partner Techshift - Developing a Global Sales Channel with AWS Marketplac...
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWS by Amazon Web Services
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWSUnlocking New Todays: Artificial Intelligence and Data Platforms on AWS
Unlocking New Todays: Artificial Intelligence and Data Platforms on AWS
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017 by Amazon Web Services Korea
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017
삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 - AWS Summit Seoul 2017
16h00 globant - aws globant-big-data_summit2012 by infolive
16h00   globant - aws globant-big-data_summit201216h00   globant - aws globant-big-data_summit2012
16h00 globant - aws globant-big-data_summit2012
infolive1.1K views
Google Cloud Fundamentals by Omar Fathy
Google Cloud Fundamentals Google Cloud Fundamentals
Google Cloud Fundamentals
Omar Fathy63 views
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017 by Amazon Web Services Korea
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017
중국에서의 AWS 활용 현황 및 유저그룹 활동 - AWS Summit Seoul 2017
Build Data Driven Apps with Real-time and Offline Capabilities by Amazon Web Services
Build Data Driven Apps with Real-time and Offline CapabilitiesBuild Data Driven Apps with Real-time and Offline Capabilities
Build Data Driven Apps with Real-time and Offline Capabilities
Amazon Web Services: Building a 'Web-Scale Computing' Architecture by goodfriday
Amazon Web Services: Building a 'Web-Scale Computing' ArchitectureAmazon Web Services: Building a 'Web-Scale Computing' Architecture
Amazon Web Services: Building a 'Web-Scale Computing' Architecture
goodfriday1.8K views
AWS Partner Techshift - Expanding Your Software Business To The Global Market... by Amazon Web Services Korea
AWS Partner Techshift - Expanding Your Software Business To The Global Market...AWS Partner Techshift - Expanding Your Software Business To The Global Market...
AWS Partner Techshift - Expanding Your Software Business To The Global Market...
Build a Recommendation Engine using Amazon Machine Learning in Real-time by Amazon Web Services
Build a Recommendation Engine using Amazon Machine Learning in Real-timeBuild a Recommendation Engine using Amazon Machine Learning in Real-time
Build a Recommendation Engine using Amazon Machine Learning in Real-time
Amazon Web Services21.8K views
엔터프라이즈를 위한 머신러닝 그리고 AWS (김일호 솔루션즈 아키텍트, AWS) :: AWS Techforum 2018 by Amazon Web Services Korea
엔터프라이즈를 위한 머신러닝 그리고 AWS (김일호 솔루션즈 아키텍트, AWS) :: AWS Techforum 2018엔터프라이즈를 위한 머신러닝 그리고 AWS (김일호 솔루션즈 아키텍트, AWS) :: AWS Techforum 2018
엔터프라이즈를 위한 머신러닝 그리고 AWS (김일호 솔루션즈 아키텍트, AWS) :: AWS Techforum 2018
Cloud Providers Public 030909 V2 by Brandon Watson
Cloud Providers Public 030909 V2Cloud Providers Public 030909 V2
Cloud Providers Public 030909 V2
Brandon Watson912 views
Deep Dive on Amazon QuickSight - January 2017 AWS Online Tech Talks by Amazon Web Services
Deep Dive on Amazon QuickSight - January 2017 AWS Online Tech TalksDeep Dive on Amazon QuickSight - January 2017 AWS Online Tech Talks
Deep Dive on Amazon QuickSight - January 2017 AWS Online Tech Talks
Amazon Web Services2.4K views

Similar to Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)

Data Streaming with Apache Kafka & MongoDB by
Data Streaming with Apache Kafka & MongoDBData Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDBconfluent
13.7K views50 slides
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS by
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAmazon Web Services
1.3K views62 slides
在-MongoDB-Cloud-上構建無服務器化應用 by
在-MongoDB-Cloud-上構建無服務器化應用在-MongoDB-Cloud-上構建無服務器化應用
在-MongoDB-Cloud-上構建無服務器化應用Amazon Web Services
617 views30 slides
Webinar: Data Streaming with Apache Kafka & MongoDB by
Webinar: Data Streaming with Apache Kafka & MongoDBWebinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDBMongoDB
1.8K views46 slides
Data Streaming with Apache Kafka & MongoDB - EMEA by
Data Streaming with Apache Kafka & MongoDB - EMEAData Streaming with Apache Kafka & MongoDB - EMEA
Data Streaming with Apache Kafka & MongoDB - EMEAAndrew Morgan
5.7K views46 slides
Serverless_with_MongoDB by
Serverless_with_MongoDBServerless_with_MongoDB
Serverless_with_MongoDBAmazon Web Services
1.1K views32 slides

Similar to Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)(20)

Data Streaming with Apache Kafka & MongoDB by confluent
Data Streaming with Apache Kafka & MongoDBData Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDB
confluent13.7K views
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS by Amazon Web Services
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
Amazon Web Services1.3K views
在-MongoDB-Cloud-上構建無服務器化應用 by Amazon Web Services
在-MongoDB-Cloud-上構建無服務器化應用在-MongoDB-Cloud-上構建無服務器化應用
在-MongoDB-Cloud-上構建無服務器化應用
Webinar: Data Streaming with Apache Kafka & MongoDB by MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDBWebinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDB
MongoDB1.8K views
Data Streaming with Apache Kafka & MongoDB - EMEA by Andrew Morgan
Data Streaming with Apache Kafka & MongoDB - EMEAData Streaming with Apache Kafka & MongoDB - EMEA
Data Streaming with Apache Kafka & MongoDB - EMEA
Andrew Morgan5.7K views
Dix conseils pour supporter la croissance de votre Startup de 0 à 10 millions... by Amazon Web Services
Dix conseils pour supporter la croissance de votre Startup de 0 à 10 millions...Dix conseils pour supporter la croissance de votre Startup de 0 à 10 millions...
Dix conseils pour supporter la croissance de votre Startup de 0 à 10 millions...
Amazon Web Services1.8K views
Web hosting is a software business by isabelwang
Web hosting is a software businessWeb hosting is a software business
Web hosting is a software business
isabelwang918 views
10 Pro Tips for scaling your startup from 0-10M users by Amazon Web Services
10 Pro Tips for scaling your startup from 0-10M users10 Pro Tips for scaling your startup from 0-10M users
10 Pro Tips for scaling your startup from 0-10M users
Amazon Web Services1.2K views
Big Data on Azure Tutorial by rustd
Big Data on Azure TutorialBig Data on Azure Tutorial
Big Data on Azure Tutorial
rustd4.8K views
AWS Cloud Kata | Kuala Lumpur - Getting to Scale on AWS by Amazon Web Services
AWS Cloud Kata | Kuala Lumpur - Getting to Scale on AWSAWS Cloud Kata | Kuala Lumpur - Getting to Scale on AWS
AWS Cloud Kata | Kuala Lumpur - Getting to Scale on AWS
Amazon Web Services1.3K views
Big Data Day LA 2015 - The AWS Big Data Platform by Michael Limcaco of Amazon by Data Con LA
Big Data Day LA 2015 - The AWS Big Data Platform by Michael Limcaco of AmazonBig Data Day LA 2015 - The AWS Big Data Platform by Michael Limcaco of Amazon
Big Data Day LA 2015 - The AWS Big Data Platform by Michael Limcaco of Amazon
Data Con LA881 views
Introduction to Cloud Computing with AWS (Thai Session) by Amazon Web Services
Introduction to Cloud Computing with AWS (Thai Session)Introduction to Cloud Computing with AWS (Thai Session)
Introduction to Cloud Computing with AWS (Thai Session)
Amazon Web Services2.3K views
devworkshop-10_28_1015-amazon-conference-presentation by Alex Wu
devworkshop-10_28_1015-amazon-conference-presentationdevworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentation
Alex Wu85 views
How leading financial services organisations are winning with tech by MongoDB
How leading financial services organisations are winning with techHow leading financial services organisations are winning with tech
How leading financial services organisations are winning with tech
MongoDB394 views
Building real-time serverless data applications with Confluent and AWS - Lond... by Ahmed791434
Building real-time serverless data applications with Confluent and AWS - Lond...Building real-time serverless data applications with Confluent and AWS - Lond...
Building real-time serverless data applications with Confluent and AWS - Lond...
Ahmed7914345 views
Introduction to Cloud Computing with Amazon Web Services by Amazon Web Services
Introduction to Cloud Computing with Amazon Web ServicesIntroduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web Services
Amazon Web Services7.8K views
Cloud Computing:An Economic Solution for Libraries by Amit Shaw
Cloud Computing:An Economic Solution for LibrariesCloud Computing:An Economic Solution for Libraries
Cloud Computing:An Economic Solution for Libraries
Amit Shaw2K views

Recently uploaded

Initiating and Advancing Your Strategic GIS Governance Strategy by
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategySafe Software
176 views68 slides
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TShapeBlue
152 views34 slides
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...ShapeBlue
126 views10 slides
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...ShapeBlue
145 views17 slides
NTGapps NTG LowCode Platform by
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform Mustafa Kuğu
423 views30 slides
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue by
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueMigrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueShapeBlue
218 views20 slides

Recently uploaded(20)

Initiating and Advancing Your Strategic GIS Governance Strategy by Safe Software
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
Safe Software176 views
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by ShapeBlue
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
ShapeBlue152 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue126 views
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by ShapeBlue
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
ShapeBlue145 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu423 views
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue by ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueMigrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
ShapeBlue218 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty64 views
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue194 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue by ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
ShapeBlue222 views
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ by ShapeBlue
Confidence in CloudStack - Aron Wagner, Nathan Gleason - AmericConfidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
ShapeBlue130 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue221 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue159 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue297 views
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue by ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
ShapeBlue203 views
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool by ShapeBlue
Extending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPoolExtending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPool
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool
ShapeBlue123 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash158 views
Why and How CloudStack at weSystems - Stephan Bienek - weSystems by ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue238 views
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li85 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue180 views

Building collaborative HTML5 apps using a backend-as-a-service (HTML5DevConf 2013 SF)

  • 1. Building collaborative HTML5 apps using a backend-as-a-service
  • 2. João Parreira CTO for Realtime Framework
  • 3. Realtime.co Cloud Services Enterprise-grade services with global presence
  • 4. Realtime.co Cloud Services Used in TOP500 global websites
  • 5. Realtime.co Cloud Services Used in TOP500 global websites
  • 8. Backend? Usually consists of three parts: a server, an application and a database.
  • 9. Backend-as-a-Service? How? What to look for? (an example would be nice ...)
  • 10. Why? (10 reasons) caching sharding data sync server provisioning scale-in/scale-out read replicas cluster management CAP theorem load balancing monitoring
  • 11. Why? (tl;dr) You love building great web apps. You don’t want to waste time operating highly available distributed backend clusters.
  • 12. A little story from the trenches Babblr: a chat platform for Tumblr users
  • 13. They are ... frontend developers JavaScript ninjas not SysAdmins friends of a guy with 600K+ Tumblr followers 
  • 14. They wanted to ... develop a chrome extension in 4 weeks keep their hands off servers launch it with a bang reach every Tumblr user
  • 15. Their solution? “do what you do best and outsource the rest” find someone to do the heavy-lifting use a backend-as-a-service And so they did, they went with Firebase.
  • 16. They had great press before launch
  • 17. th 6PM PST. They launched! May 7
  • 18. One hour later ... “… we got 34,000 downloads in a matter of 30 minutes. And what that did is that the servers couldn’t handle that traffic …”
  • 19. What went wrong? But you promised me love Promised me love, love, love Cee Lo Green
  • 20. What to look for?
  • 21. Scalable Mobile ready Available at all times Real-time enabled Truly secure
  • 22. Lack of scalability will doom your success  Remember Babblr:  the prototype was easy to develop ...  everything worked during private beta ...  but production launch was a disaster!  The backend service was not up to the task.  It didn’t scale when Babblr most needed it.
  • 23. Your success depends on your backend scalability  Understand how your BaaS provider scales . Ask.  Never talks about ops/sec? Hummm ...  Favour reserved capacity scaling models  Look for scaling APIs and autoscaling processes  Be suspicious of scale limited developer plans. What is the provider affraid of?
  • 24. Mobile is the new black!  ~40% of internet time now on mobile devices  Native iOS and Android SDKs are mandatory  Push notifications are a nice plus (APNS, GCM)  If you’re not flirting with native apps ...you should.
  • 25. Your user is king and he demands you’re available  Data must be stored in multiple datacenters  Periodic backups? Disaster Recovery != Business Continuity  Rolling deploys must be the standard procedure  Look for service status pages  A 99,999% SLA is quite normal ... don’t let anyone tell you otherwise.
  • 26. Life supports real-time, your app should too  Collaboration is easier with real-time data sync  No persistent connection to each user? Sorry, no real-time for you.  We’re talking about time, latency matters. Measure.  Look for WebSockets. They’re new but they’re awesome
  • 27. Thou shalt have a truly secured app  If there’s a security option... turn it on! http://robinverton.de/blog/2013/08/27/becareful-when-going-client-only-firebase/  Don’t trust the client …  You should be able to say “who can do what”
  • 28. Thou shalt have a truly secured app  Favour ACLs with CRUD permissions  Look for SSL enabled providers  Look for providers using certified infrastructure  Look for cryptographic methods to authenticate users and prevent unauthorized data access
  • 29. Scalable Mobile ready Available at all times Real-time enabled Truly secure
  • 32. It’s Scalable  Reserved capacity scaling model  Different capacity for reads and writes  Powered by Amazon DynamoDB  Highly-scalable NoSQL database  Shazam at SuperBowl 2012: 500.000 writes per second
  • 34. It’s Mobile ready  Objective-C SDK for iOS  Java SDK for Android  Push notifications with APNS+GCM (in private beta, public in 3 weeks)
  • 35. It’s highly-available  100% uptime (source: Site24x7)  Multi-region (US, EU, BR and ASIA)  Data is saved in 3 different datacenters
  • 36. It’s real-time enabled  Data sync through WebSockets (with fallbacks)  Powered by high-performance pub/sub message broker  Simple event-based API: var tableRef = storageRef.table("SomeTable"); tableRef.on("update", function(item) { console.log(“Got an update:", item.val()); });
  • 37. It’s secure  Token-based authentication  Permissions by ACLs with Create-Read-Update-Delete  Roles for easier user management  SSL encryption
  • 38. It’s cost-effective  Pay-as-you-go  Starts from $1.5 USD/month (2 operations/sec)  $500 USD developer offer including:  10.000 concurrent users  200GB storage  10 million real-time notifications/month
  • 39. One cloud backend, one API, multiple platforms API DynamoDB Highly scalable Real-time notifications API Realtime Cloud Storage BaaS API API
  • 40. (yes, with an example)
  • 41. Building a collaboration HTML5 app in 5 minutes  Group chat  Realtime Cloud Storage (backend)  AngularJS (MVC framework)  Nicolas Gallagher PURE CSS SPEECH BUBBLES (pizzazz) http://nicolasgallagher.com/pure-css-speech-bubbles/
  • 42. Developer resources  https://github.com/jparreira/Html5DevConf  https://github.com/realtime-framework/Storage  http://framework.realtime.co/storage
  • 43. Realtime Cloud Storage : use cases A unified backend for modern applications across platforms           Collaboration applications Multiplayer Online Games Social networks streams Digital Advertising E-commerce Publishing Project Management Chats and comments Systems monitoring dashboards The next big thing ...