Upload
amazon-web-services
View
732
Download
0
Tags:
Embed Size (px)
DESCRIPTION
The more devices are connected, the more new applications and services emerge that use those connected devices. AWS offers a wide variety of services that can be used to build andquot;device clouds,andquot; backend infrastructure for connecting different kinds of devices, including smart phones, tablets, smart meters, connected cars, sensor and actuator gateways, and so on. In this session, we share best practices for authentication, authorization, messaging, data collection, analytics, and much more. We also hear from Internet of Things (IoT) customers who have successfully built highly-scalable device clouds on AWS.
Citation preview
November 12, 2014, Las Vegas, NV
Jinesh Varia, @jinman
Scalability
User Experience
Security
Elastic Load
BalancingElastic Load
Balancing
API
API
API
Device
Device
Device
Brokers
Scalability
User Experience
Security
Scalability
User Experience
Security
POST https://api.spark.io/v1/devices/teddy-bear/hug
??
a = 1 b = “two”
c = 3
d = “four”a = 1
b = “two”
c = 3
d = “four”
c = 3
d = “four”
geofence = inside
where truck in geofence a
and c > 1 and d != “two”
• HTTP Post (webhook)
• SNS
• RedShift
• S3
• Republish on another
topic
• Republish to another
account
• Transform payload
a = 2
– Custom actors for AWS actions
iOS 8 interactive notifications
REQUEST
RESPONSE???
STREAM PROCESSING / INTEGRATIONS
Device
Consumers
Application
Consumers
?
Study by Stephen Nicholas (MQTT and HTTP on Android)
Creating Connection (% Battery used)
3G Wifi
HTTPS MQTT HTTPS MQTT
0.02972 0.04563 0.00228 0.00276
Study by Stephen Nicholas (MQTT and HTTP on Android)
% Battery used / hour
3G Wifi
HTTPS MQTT HTTPS MQTT
1.11553 0.72465 0.15839 0.01055
0.48697 0.32041 0.08774 0.00478
0.33277 0.16027 0.02897 0.00230
0.08263 0.07991 0.00824 0.00112
60 Seconds
120 Seconds
240 Seconds
480 Seconds
BROKER
QoS 0
PUBLISH
PUBLISH
PUBACK
PUBLISH
PUBACK
PUBREL
PUBCOMP
- At most once
- Does not survive network failure
QoS 1- At least once
- Can survive network failure
- Can be duplicated
QoS 2- Exactly once
- Can survive network failure
- Never duplicated
BROKER
CONNECT ID=thing2
SUBSCRIBE things/#2
CONNECT ID=thing1 LWT=things/thing1 “disconnected”
1PINGREQ
PINGRESP
KEEP_ALIVE exceeded
2 things/thing1 “disconnected”
SUBSCRIPTION SUBSCRIPTION
SESSION SESSION
SUBSCRIPTION
SESSION SESSION SESSION
1 2 3 4 5 1 2 3 54
• Durable Subscription– Messages 2 and 4 are
not lost but will be received on next connection
Real-time message processing
& Scalable API management
1Introduction
2 3 4Under the Hood:
What’s Unique
Use Case Evolving
with AWS
Let’s take a look at the evolution…
- Listeners
- Commanders
Yarn Cluster:
- Translation (i/o)
- BI
Public-facing API
MongoDB
Sinatra
Postman
Sinatra
YARN
ZooKeeper
Postman
VPC
(translation)
Public EC2
(APIs)
http://bit.ly/awsevals