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
Safe Lambda Deployments - Albany NY - 2018-11-15
Search
sullis
November 15, 2018
Technology
230
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Safe Lambda Deployments - Albany NY - 2018-11-15
AWS User Group
Albany NY
November 15, 2018
sullis
November 15, 2018
More Decks by sullis
See All by sullis
Dependency Management for Java - Code Remix Summit 2026-05-12
sullis
0
53
AI Assisted Software Development - Portland Java User Group - 2026-04-14
sullis
0
64
Dependency Management for Java - Seattle 2025-11-18
sullis
0
50
Dependency Management for Java - Portland - 2025-11-04
sullis
0
35
Dependency management for Java applications 2025-09-11
sullis
0
52
S3 NYC Iceberg meetup 2025-07-10
sullis
0
58
Amazon S3 Chicago 2025-06-04
sullis
0
150
Amazon S3 Boston 2025-05-07
sullis
0
110
Netty ConFoo Montreal 2025-02-27
sullis
0
170
Other Decks in Technology
See All in Technology
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.2k
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
290
GoとSIMDとWasmの今。
askua
3
510
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
700
先取りMaven4 ~16年ぶりのメジャーアップデート、その進化とは?~
ogiwarat
0
140
Mastering Ruby Box
tagomoris
3
150
Dynamic Workersについて
yusukebe
2
590
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
750
Sony_KMP_Journey_KotlinConf2026
sony
2
210
Agentic Web
dynamis
1
130
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
360
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
The Cult of Friendly URLs
andyhume
79
6.9k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
590
Optimising Largest Contentful Paint
csswizardry
37
3.7k
The Pragmatic Product Professional
lauravandoore
37
7.3k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
600
Transcript
Sean Sullivan November 15, 2018 AWS User Group Albany NY
SAFE LAMBDA DEPLOYMENTS
software engineer Portland Oregon back office systems Hudson’s Bay Company
About me
None
saksfifthavenue.com saksoff5th.com lordandtaylor.com thebay.com
saksfifthavenue.com
undifferentiated heavy lifting AWS
provisioning servers AWS serverless
None
None
system plumbing business logic
None
None
HBC 2018 microservice architecture multi-tenant services increased adoption of AWS
Lambda safe deployments
None
HBC email types • order acknowledgement • order shipment partial
• order shipment full • order cancel • ready for pickup in store
Queue consumer Event queue Email Dashboard UI Email Sender Email
Render External Email Provider Feature Flag service
Email Render Product Detail service Delivery Date Estimation service request
HTML Feature Flag service
HBC email system • multi-tenant design • Cloudwatch Metrics •
Cloudwatch Alerts
HBC email system • code coverage threshold • components deployed
independently • safe deployments
aws-cli
$ brew install aws-cli
aws cloudformation package \ --template-file my-template.yaml \ --s3-bucket mycorp-codedeploy \
--s3-prefix my-lambda-func/jars \ --output-template-file package/2325bd1e.yaml
aws cloudformation deploy \ --template-file package/2325bd1e.yaml \ --stack-name mylambda-func—dev \
--parameter-overrides Stage=dev \ --region us-east-1 \ --capabilities CAPABILITY_IAM \ --notification-arns arn:aws:sns:us- east-1:123456789:myteam-cf-notifications
Mark Zuckerberg
Move Fast and Break Things Move Slow and Don’t Break
Things
Move Fast and Don’t Break Things Move Purposefully and Fix
Things
manual testing automated testing
how often do you release code to production?
safe AWS Lambda deployments?
https://www.youtube.com/watch?v=UIp6sLyvoC0
None
None
Traffic Shifting
You can now shift incoming traffic between two AWS Lambda
function versions based on pre-assigned weights. You can now also use AWS CodeDeploy to automatically manage the rollout of new function versions. This allows you to gradually shift traffic between two versions source: aws.amazon.com
Traffic Shifting configurations AllAtOnce Canary10Percent30Minutes Canary10Percent5Minutes Canary10Percent10Minutes Canary10Percent15Minutes
Linear10PercentEvery10Minutes Linear10PercentEvery1Minute Linear10PercentEvery2Minutes Linear10PercentEvery3Minutes Traffic Shifting configurations
all-at-once traffic shifting gradual traffic shifting
aws cloudformation deploy \ --template-file package/2325bd1e.yaml \ --stack-name mylambda-func—dev \
--parameter-overrides Stage=dev \ --parameter-overrides DeploymentPref=AllAtOnce \ --region us-east-1 \ --capabilities CAPABILITY_IAM \ --notification-arns arn:aws:sns:us- east-1:123456789:myteam-cf-notifications
Traffic Hooks
AWS traffic hooks • PreTraffic hook • PostTraffic hook
AWS CodeDeploy UI https://console.aws.amazon.com/codesuite/codedeploy/deployments
https://github.com/awslabs/serverless-application-model/pull/605
Future work at HBC additional validation logic in Pre Traffic
hook implement Post Traffic hook utilize AWS Cloud9 IDE
Final thoughts
traffic shifting
small incremental releases
engineering velocity is a competitive advantage
The end
None