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 Serverless Express 入門
Search
Nokogiri
August 03, 2018
Technology
0
1.1k
AWS Serverless Express 入門
AWS Lambda を使って Express を 一瞬で公開する方法
Nokogiri
August 03, 2018
Tweet
Share
More Decks by Nokogiri
See All by Nokogiri
React Testing Libraryでの WAI-ARIAロールの活用事例
undefined_name
1
120
自動テストは何の役に立つのか そして役に立たないのか
undefined_name
5
1.7k
Pipe Operator (|>) の紹介
undefined_name
2
270
FizzBuzzで学ぶOCP
undefined_name
0
87
エンジニアとQAでコラボするフロントエンドリアーキテクチャ開発の事例
undefined_name
4
2.7k
オブジェクト指向のプラクティスをフロントエンドで活用する
undefined_name
7
1.5k
モププロ@kintone開発チーム
undefined_name
1
550
勉強会で登壇者に 質問しづらい課題を解決する サービスをリリースしました🎉
undefined_name
2
1.2k
Usefull GitLens
undefined_name
3
770
Other Decks in Technology
See All in Technology
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
780
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
150
Share my, our lessons from the road to re:Invent
naospon
0
110
わたしのOSS活動
kazupon
2
300
php-conference-nagoya-2025
fuwasegu
0
110
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
140
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
1
220
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
830
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
3
1.9k
AIエージェント元年
shukob
0
120
2.5Dモデルのすべて
yu4u
2
930
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.6k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Building Adaptive Systems
keathley
40
2.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Transcript
2018/08/03 ؔNodeֶԂ 3࣌ݶ AWS Serverless Eλpress ೖ AWS Lambda Λͬͯ
Express Λ ҰॠͰެ։͢Δํ๏
AWS Serverless Express ͬͯ·͔͢ʁ
JavaScript / Java / React / AWS / Vim ͡Ί·ͯ͠!
Taiki Nishi @nkgrnkgr Nokogiri Blog nkgrnkgr.github.io WebΞϓϦέʔγϣϯΤϯδχΞ ๏ਓ͚άϧʔϓΣΞαʔϏεͷ։ൃ HN: Nokogiri(nkgrnkgr) Ұࣇͷʢࠓ݄ೋࣇͷʹͳΓ·͢ ʣ Speaker Deck
Expressͬͨ͜ͱ͋Γ·͔͢ʁ
AWS Lambdaͬͨ͜ͱ͋Γ·͔͢ʁ
ExpressΛ͍ͬͯΔਓ͕ AWS LambdaΛͬͯ ͤʹͳΕΔͰ͢ ☺
What is Serverless ? ͦͦServerlessͱʁ 1
αʔόʔϨείϯϐϡʔςΟϯάͱɺΫϥυϓϩό Πμʔ͕ΞϓϦέʔγϣϯʹඞཁͳϚγϯϦιʔεͷׂ ΓͯΛಈతʹཧ͠ɺࣄલʹߪೖ͞Εͨ͜ͱʹجͮ͘ ٻͰͳ͘ɺ֤ΞϓϦέʔγϣϯཁٻΛຬͨͨ͢Ίʹ ༻͞ΕΔݸʑͷϦιʔεྔʹج͍ͮͨٻΛߦ͏Α͏ ͳΫϥυίϯϐϡʔςΟϯάϞσϧɻ “ Wikipedia ΑΓ
CLOUD FUNCTIONS AWS Lambda Azure functions ओͳ Serverless Platform
CLOUD FUNCTIONS AWS Lambda Azure functions ओͳ Serverless Platform Today’s
Topic
AWS Lambda ͷಛ ։ൃऀ͕࣮ߦڥͷαʔόʔΛ४උͤͣίʔυΛσϓϩΠ͢Δ͚ͩ HTTP ϦΫΤετͳͲ༷ʑͳΠϕϯτΛτϦΨʔʹؔΛ࣮ߦ͢Δ Φʔτεέʔϧ ॳճىಈʹ͕͔͔࣌ؒΔ σϓϩΠͰ͖ΔϑΝΠϧαΠζ͕ 50MB
·Ͱ 1ϦΫΤετ͋ͨΓͷ࠷େ࣮ߦ͕࣌ؒ 300ඵ ͍Ͳ͜ΖΛબͿ͕ͱʹ͔͍҆͘ 1ϲ݄ 100M ϦΫΤετ·Ͱແྉ Ҏ߱ 100M ϦΫΤετຖʹ 0.2 US$
What is AWS Serverless Express ? AWS Serverless Express ͱʁ
2
AWS Serverless Express AWS LambdaͱAPI Gatewayͷ্ʹɺExpress༻ͯ͠αʔόʔϨε ΞϓϦέʔγϣϯͱREST APIΛ࣮ߦ͢ΔAWSެࣜϥΠϒϥϦ ExpressͷMiddleware ʹՃ͢Δ͚ͩͰ
LambdaͰ࣮ߦՄೳʹͳΔ https://github.com/awslabs/aws-serverless-express
How to use 3
Express ʹ aws-serverless-express ΛΠϯετʔϧ STEP1 STEP2 STEP3 STEP4 ❯ npm
install aws-serverless-express +
[email protected]
updated 1 package and audited 198 packages in 2.889s found 2 low severity vulnerabilities run `npm audit fix` to fix them, or `npm audit` for details
const awsServerlessExpress = require('aws-serverless-express'); const app = require('./app'); const server
= awsServerlessExpress.createServer(app); exports.handler = (event, context) => awsServerlessExpress.proxy(server, event, context); Lambda ͔Βݺͼग़͞ΕΔ handler Λ࡞ STEP1 STEP2 STEP3 STEP4 index.js
ࠓ Express ͷ middleware ʹ ͜ͷϥΠϒϥϦΛՃ STEP1 STEP2 STEP3 STEP4
const serverlessExpress = require('aws-serverless-express/middleware'); var app = express(); app.use(serverlessExpress.eventContext()); app.js
ࠓ Express ͷ middleware ʹ ͜ͷϥΠϒϥϦΛՃ STEP1 STEP2 STEP3 STEP4
const serverlessExpress = require('aws-serverless-express/middleware'); var app = express(); app.use(serverlessExpress.eventContext()); app.js ΞϓϦέʔγϣϯͱͯ͠Δ͜ͱҎ্ͰऴΘΓ
Lambda ͷσϓϩΠ Serverless Flamework Λར༻ STEP1 STEP2 STEP3 STEP4 $
npm install serverless -g +
[email protected]
updated 3 packages in 11.062s https://serverless.com/framework/
σϓϩΠ༻ʹ ઃఆϑΝΠϧΛ࡞ STEP1 STEP2 STEP3 STEP4 service: serverless-express-example provider: name:
aws runtime: nodejs8.10 stage: dev region: ap-northeast-1 functions: app: handler: index.handler events: - http: ANY / - http: 'ANY {proxy+}' serverless.yml
❯ sls deploy Serverless: Packaging service... Serverless: Excluding development dependencies...
Serverless: Uploading CloudFormation file to S3... Serverless: Uploading artifacts... Serverless: Uploading service .zip file to S3 (2.16 MB)... Serverless: Validating template... Serverless: Updating Stack... Serverless: Checking Stack update progress... .............. Serverless: Stack update finished... Service Information service: serverless-express-example stage: dev region: ap-northeast-1 stack: serverless-express-example-dev api keys: None endpoints: ANY - https://u8klxp40gc.execute-api.ap-northeast-1.amazonaws.com/dev ANY - https://u8klxp40gc.execute-api.ap-northeast-1.amazonaws.com/dev/{proxy+} functions: app: serverless-express-example-dev-app APIGawayͷEndPointsͷ࡞͔ΒίʔυͷσϓϩΠ·Ͱશ෦ͬͯ͘ΕΔ STEP1 STEP2 STEP3 STEP4
URLʹΞΫηεͨ͠Βެ։͞Εͯ·͢ STEP1 STEP2 STEP3 STEP4
ϥΠϒίʔσΟϯά %
Thanks!