Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Serverless Cloud Integration Pattern
Search
Lars Trieloff
October 27, 2016
Programming
460
1
Share
The Serverless Cloud Integration Pattern
Presented at ServerlessConf London 2016, with Dragos Dascalita Haut
Lars Trieloff
October 27, 2016
More Decks by Lars Trieloff
See All by Lars Trieloff
Putting the F in FaaS
trieloff
1
2.1k
Sustaining through change — learning from 20 years of AEM history
trieloff
2
710
Inside the Adobe Cloud Platform: Adobe I/O, Adobe Sensei & XDM
trieloff
0
420
Extending Adobe Experience Manager with Adobe I/O Events
trieloff
0
100
Other Decks in Programming
See All in Programming
AWSコミュニティ活動は顧客のクラウド推進に効くのか / Do AWS community activities help customers adopt the cloud?
seike460
PRO
0
160
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
26
18k
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
950
The Less-Told Story of Socket Timeouts
coe401_
3
910
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
190
t *testing.T は どこからやってくるの?
otakakot
1
880
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
110
Programming with a DJ Controller — not vibe coding
m_seki
3
730
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
720
AI-DLC Deep Dive
yuukiyo
9
5.3k
ハーネスエンジニアリングとは?
kinopeee
13
6.6k
🦞OpenClaw works with AWS
licux
1
320
Featured
See All Featured
Accessibility Awareness
sabderemane
1
110
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
RailsConf 2023
tenderlove
30
1.4k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
140
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Talk to Developers About Accessibility
jct
2
190
For a Future-Friendly Web
brad_frost
183
10k
Ethics towards AI in product and experience design
skipperchong
2
270
Un-Boring Meetings
codingconduct
0
280
New Earth Scene 8
popppiees
3
2.2k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
530
ラッコキーワード サービス紹介資料
rakko
1
3.2M
Transcript
The Serverless Cloud Integration Pattern
None
I want a film^H conference that starts with an earthquake^H
evacuation and then works up to a climax.
. ̴̴ Lars Trieloff ̴̴̴̴̴̴ Dragos Dascalita Haut . ̴
@trieloff ̴̴̴̴ @ria_thinker
None
3 Clouds
100+ Products
Many acquisitions
Diverse Technology Stack
None
Big Cloud Users
Behind some of the biggest brands
Question: how to make it all play together?
Question: how to make it play with the rest of
the world?
Answer: let’s build a cool website
None
Just kidding
Who is building integrations? Who is building apps with Adobe
APIs? Who is building experiences using Adobe Products?
Developers, Developers, Developers
What Developers Want
→ Write Code → Deploy Code → Manage Servers
→ Write Code → Deploy Code → Manage Servers →
Drink Beer
→ Write Code → Deploy Code → Manage Servers →
Drink Beer
Servers: can’t live with them, can’t live without them.
Here is our 4-Step plan to serverlessness
1. Put Servers behind Glass
None
APIs
API Gateway
→ Caching → Throttling → Authentication → Logging
From dumb proxy to smart gateway
→ Hide yo monoliths → Establish API practices → Provide
easy access
→ NGINX → OpenResty → Lua
!" https://github.com/adobe-apiplatform/apigateway
Establish API Best practices
Establish API Best practices
None
2. Contain your Applications
None
Containers
Ethos → Standardized Container OS → Standardized CI/CD pipeline →
Feature flags as a Service
3. Put Code on the Short Leash
None
Serverless Runtime
Never trust a computer you can't throw out a window.
— Steve Wozniak
Never trust code you can’t terminate after one second. —
Dragos Dascalita Haut
Serverless Integrations → WebHooks++ → Low Latency → Low Maintenance
Our needs → Untrusted Code → Extensibility + Context →
Cloud Provider Independence
None
Are you guys serious about the delivery date? — John
Pritchard, Director Engineering
OpenWhisk !" https://github.com/openwhisk/openwhisk
None
http://bit.ly/apachewhisk
4. Wait for the call
None
Event Gateway
Why Events? → Asynchronous Processing → Function Orchestration → Reliability
& Scalability
Demo Because everyone ♥ bots
┌───────────────────┐ ┌───────────────────┐ ┌───────────────────┐ │ │ │ │ │ │ │
│ │ │ │ │ │ Alexa ! │──────────▶│ API Gateway " │──────────▶│ OpenWhisk # │ │ │ │ │ │ │ │ │ │ │ │ │ └───────────────────┘ └───────────────────┘ └───────────────────┘
None
Training Alexa ┌─────────────────┐ ┌─────────────────┐ │ │ │ │ │ │
│ │ │ Intent │⾢─────────▶│ User Phrase │ │ │ │ │ │ │ │ │ └─────────────────┘ └─────────────────┘
Training Alexa How many page views this month? { "intents":
[ { "intent": "PageViews" } ] }
Training Alexa How many {metric name} this month? { "intents":
[ { "intent": “CustomView”, "slots": [ { "name":"MetricName", "type":"LIST_OF_METRICS" } ] } ] }
Writing the Function Copy the code !" http://bit.ly/dragosdemo Add the
function on the CLI wsk -i action create alexa alexa-demo.js
None
Why the gateway? Alexa Headers: SignatureCertChainUrl, Signature & … OpenWhisk
expects: Authorization
Signature !1 Authorization 1 not real magic
None
FIN (don’t forget to check out adobe.io)