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
1
450
The Serverless Cloud Integration Pattern
Presented at ServerlessConf London 2016, with Dragos Dascalita Haut
Lars Trieloff
October 27, 2016
Tweet
Share
More Decks by Lars Trieloff
See All by Lars Trieloff
Putting the F in FaaS
trieloff
1
2k
Sustaining through change — learning from 20 years of AEM history
trieloff
2
700
Inside the Adobe Cloud Platform: Adobe I/O, Adobe Sensei & XDM
trieloff
0
370
Extending Adobe Experience Manager with Adobe I/O Events
trieloff
0
100
Other Decks in Programming
See All in Programming
高単価案件で働くための心構え
nullnull
0
160
CloudflareのSandbox SDKを試してみた
syumai
0
180
Private APIの呼び出し方
kishikawakatsumi
3
900
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
100
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
180
Building AI with AI
inesmontani
PRO
1
260
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.3k
Level up your Gemini CLI - D&D Style!
palladius
1
110
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
2
410
AI時代もSEOを頑張っている話
shirahama_x
0
160
関数の挙動書き換える
takatofukui
4
750
CSC509 Lecture 11
javiergs
PRO
0
310
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
The Cult of Friendly URLs
andyhume
79
6.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Balancing Empowerment & Direction
lara
5
760
Six Lessons from altMBA
skipperchong
29
4.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Automating Front-end Workflow
addyosmani
1371
200k
We Have a Design System, Now What?
morganepeng
54
7.9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Designing Experiences People Love
moore
142
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
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)