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
AWS Lambda & Ruby/Rails with SAM
Search
Ken Collins
March 06, 2019
Programming
1
4.3k
AWS Lambda & Ruby/Rails with SAM
Ken Collins
March 06, 2019
Tweet
Share
More Decks by Ken Collins
See All by Ken Collins
Experts.js @ Norfolk.js
metaskills
0
25
The Rise of AI Copilots
metaskills
0
50
Real-World AI Automation with Lambda & Bedrock
metaskills
0
66
The Lambda Sidecar Pattern for Event-Driven Kubernetes
metaskills
0
300
The Case for Rails on Lambda v1
metaskills
0
610
Learn to Program The Cloud with Ruby & AWS Lambda
metaskills
0
63
Full-Stack to Functions & Back Again
metaskills
0
240
Turbo Applications - Winning with Ajax + pushState + Rails
metaskills
0
270
Modular CSS & Sass
metaskills
1
160
Other Decks in Programming
See All in Programming
Java ジェネリクス入門 2024
nagise
0
530
AWS IaCの注目アップデート 2024年10月版
konokenj
3
2.1k
Piniaの現状と今後
waka292
5
1.4k
現場で役立つモデリング 超入門
masuda220
PRO
12
2.6k
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
2
2k
Vue.js学習の振り返り
hiro_xre
2
130
ピクシブ百科事典のWebフロントエンドパフォーマンス改善
higara
0
230
ActiveRecordの力でDBのメタデータを迅速に解析する
lnit
5
2.2k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
4
13k
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
1
240
OpenTelemetryでRailsのパフォーマンス分析を始めてみよう(KoR2024)
ymtdzzz
3
1k
C#/.NETのこれまでのふりかえり
tomokusaba
1
140
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
95
5.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
GraphQLの誤解/rethinking-graphql
sonatard
66
9.9k
Designing for humans not robots
tammielis
249
25k
Thoughts on Productivity
jonyablonski
67
4.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
13
1.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
0
29
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
Being A Developer After 40
akosma
86
590k
Designing the Hi-DPI Web
ddemaree
280
34k
Transcript
AWS Lambda & Ruby/Rails with SAM
Congratulations! The simple fact that you are sitting here listening
to me, means you've made a glorious contribution to Science! Tragic, but informative. Cave Johnson
Ken Collins Staff Engineer @CustomInk @MetaSkills
None
⠀ ⠀ ⠀
KNOWLEDGE Rails & Lambda Ruby & Lambda Tech Intro AWS
SAM Objectives & Results
None
None
Change The World One Lambda at a Time!
Using Ruby with AWS Lambda & SAM https://github.com/757rb/hello-757rb-lambda
Custom Ink | Tech Blog https://technology.customink.com
https://dctechslack.herokuapp.com https://slackin757dev.herokuapp.com DCTech || 757Dev
Tech Intro
Strap Bootstrap your macOS development system. GitHub Project https://github.com/MikeMcQuaid/strap
• ./bin/ • bootstrap, setup, build, server, deploy, test,
… • Usually Bash Strap
AWS Lambda
None
AWS SAM GitHub Project https://github.com/awslabs/serverless-application-model/
$ sam
https://github.com/awslabs/serverless- application-model/blob/master/versions/ 2016-10-31.md
https://docs.aws.amazon.com/ AWSCloudFormation/latest/UserGuide/aws- template-resource-type-ref.html CLOUDFORMATION
$ sam local start-api
$ sam build --use-container
$ sam package … $ sam deploy …
Ruby & Lambda
Project Pillars • Local Development Feedback • Using Gems with
Native Extensions • Using DynamoDB
Contrived Architecture DynamoDB HTTP /plos?query={query}
None
Docker Image lambci/lambda:ruby2.5
Local Dev Deps
Easy Development & Browser Refreshes
Patterns • Directories (app, test, etc) • Lean Handler &
PORO Usage • Debug HTML. Event, Context, & ENV • Minitest, TravisCI, & Capybara* *not really
Aws::Record GitHub Project https://github.com/aws/aws-sdk-ruby-record
DynamoDB
Used in IAM Execution Role DynamoDB
None
Patterns…
None
Patterns • Easy/Lazy Development & Test • Table Migrations •
SimpleTable On Demand Defaults
Using Ruby with AWS Lambda & SAM https://github.com/757rb/hello-757rb-lambda
Rails & Lambda
Product Site http://rubyonjets.com
Ruby on Jets
Ruby on Jets
None
None
None
None
None
None
None
None
None
None
Little Gotcha List • Docker Shared Volume Perf • Logging
& RAILS_LOG_TO_STDOUT • Keeping Package Size Down. • Invoke URL & Custom Domains
None
Coming Soon • Quality Rack Integration. Session, Cookies, & More.
• Deploy asset:precompile to S3. • Encrypted Session Secret via AWS System Manager Param Store. • Better Gemfile dev/test groups.
None
Lambda Layers
--help
None
RailsConf 2019
https://dctechslack.herokuapp.com https://slackin757dev.herokuapp.com DCTech || 757Dev
None