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
Lambda Image Resizing
Search
stevenjackson
April 21, 2016
Programming
0
77
Lambda Image Resizing
Lunch and Learn - April 2016
stevenjackson
April 21, 2016
Tweet
Share
More Decks by stevenjackson
See All by stevenjackson
Death By Specification
stevenjackson
1
36
Devour The Cloud With Locust Swarms - Hands On Load Testing
stevenjackson
0
75
Looking for Failure
stevenjackson
0
130
Better Software Through Shared Understanding
stevenjackson
0
150
Going to Eleven
stevenjackson
0
67
A Locust Storm Is A Good Thing!
stevenjackson
0
120
Faliing Your Way To Success
stevenjackson
0
87
Death By Specification(cukeup)
stevenjackson
0
140
Failure Lightning Talk
stevenjackson
0
97
Other Decks in Programming
See All in Programming
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
Navigating Dependency Injection with Metro
zacsweers
3
3.5k
AIでLINEスタンプを作ってみた
eycjur
1
230
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
350
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
1
150
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
130
Deep Dive into Kotlin Flow
jmatsu
1
370
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
650
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
4.3k
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
300
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
140
7.1k
Designing for humans not robots
tammielis
253
25k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How GitHub (no longer) Works
holman
315
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Docker and Python
trallard
46
3.6k
Producing Creativity
orderedlist
PRO
347
40k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Documentation Writing (for coders)
carmenintech
74
5k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Writing Fast Ruby
sferik
628
62k
Transcript
WE DON’T NEED NO STINKING SERVERS IMAGE RESIZING WITH AWS
LAMBDA
The Problem: For the last 6 years, users have been
able to upload any image they like for use in a VizZle lesson 10144 × 8054 pixels 32.6 MB 980 DPI minutes to download
And the app would never show it at that resolution!
Max Page Size: 1920 x 1080 414x329 915x686 944x708
Or the old app Flash “Card” Size: 520 x 390
The Solution: Batch convert all the images! Max Image Size
960x540 680x540 $ convert 1416855261.78270 -size x540
“How many images are there anyway?” –Hey Blinken
None
None
None
“Are you going to download every one from the internet?”
–Al Gore
None
None
“What are we going to do with new uploads?” –Johnny
Five
None
None
“Who is going to maintain that EC2 instance?” –Jeff Bezos
None
None
None
None
None
None
None
None
Or any binary compiled on Amazon Linux!
None
None
None
None
None
None
None
Read/Write S3 Role Type: AWS Lambda Attach Policy: AWSLambdaExecute
None
None
Lambda Interface
None
None
Deployment
Configuration
Testing
Testing
Testing
Image Resizing Gotchas Maintain Aspect Ratios Lossy vs Lossless Lossy
vs Headless Lambda Inception ACLs
Image Resizing Gotchas Maintain Aspect Ratios Lossy vs Lossless Lossy
vs Headless Lambda Inception ACLs
Lambda Gotchas Function runtime is limited to 5 minutes Maximum
of 1.5GB memory Debugging involves waiting for CloudWatch logs to show up
“What else can we do with it?” –Jeff Bezos
None
None
None
None
None
None
None
None
None
None
None