Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
gunmaweb-serverless
kanayannet
March 06, 2021
Programming
0
140
gunmaweb-serverless
kanayannet
March 06, 2021
Tweet
Share
More Decks by kanayannet
See All by kanayannet
http2http3
kanayannet
0
46
old typeからのクラウドインフラ
kanayannet
0
130
疎結合と認知
kanayannet
0
140
クリーンアーキテクチャを活かす考察
kanayannet
1
130
プロジェクト管理ツールの経験則
kanayannet
0
190
TDDと認知
kanayannet
0
210
Animation GIF
kanayannet
0
250
今更聞けないPWA
kanayannet
0
490
jojo-naive
kanayannet
0
190
Other Decks in Programming
See All in Programming
CDKでValidationする本当の方法 / cdk-validation
gotok365
1
210
Step Functions Distributed Map を使ってみた
codemountains
0
110
Amebaブログの会員画面システム刷新の道程
ryotasugawara
1
240
Jetpack Compose 完全に理解した
mkeeda
1
470
Most Valuable Bug(?) ~インシデント未遂から得た学び~
tatsumiakahori
0
150
データドリブンな組織の不正検知
fkubota
0
250
Refactor with using `available` and `deprecated`
417_72ki
3
380
AWS App Runnerがそろそろ本番環境でも使い物になりそう
n1215
PRO
0
1.1k
量子コンピュータ時代のプログラミングセミナー / 20230119_Amplify_seminar _shift_optimization
fixstars
0
190
TokyoR#103_DataProcessing
kilometer
0
530
Enumを自動で網羅的にテストしてみた
estie
0
1.3k
2023年にクル(かもしれない)通信ミドルウェア技術(仮)
s_hosoai
0
200
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
117
15k
Building Your Own Lightsaber
phodgson
96
4.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
226
130k
Designing with Data
zakiwarfel
91
4.2k
Side Projects
sachag
451
37k
Debugging Ruby Performance
tmm1
67
11k
The Web Native Designer (August 2011)
paulrobertlloyd
76
2.2k
Adopting Sorbet at Scale
ufuk
65
7.8k
Building an army of robots
kneath
301
40k
Keith and Marios Guide to Fast Websites
keithpitt
407
21k
Building Better People: How to give real-time feedback that sticks.
wjessup
346
17k
The World Runs on Bad Software
bkeepers
PRO
59
5.7k
Transcript
Head First serverless アーキテクチャ Gunma.web #40 Gunma.web #40 @kanayannet @kanayannet
今⽇はこれ的に話します。 画像イメージ( デモ)
serverless 開発者や運⽤者がサーバー管理を考慮せずにリソース 開発者や運⽤者がサーバー管理を考慮せずにリソース を使⽤できること を使⽤できること
イメージ湧かないよね? よく解らないと思う よく解らないと思う
ライブラリ関数は 作った事あるよね?
関数を動かそうと思ったら… 1. OS を⽤意 2. xx ⾔語をinstall 3. 実⾏するPG を⽤意
4. ライブラリを作成 5. 「4 」を「3 」で読み込む 6. 「4 」を実⾏する「トリガー」を記述する 7. 「トリガー」を踏めば、実⾏される
こんなん出来たら便利だよね? 1. イベントの「定義」をコードに記述する 2. 何を実⾏するか?はユーザが⾃由に加⼯して良い 3. deploy するだけ
具体的な実装例 参考: const AWS = require('aws-sdk'); const util = require('util');
const sharp = require('sharp'); // get reference to S3 client const s3 = new AWS.S3(); exports.handler = async (event, context, callback) => { // Read options from the event parameter. console.log("Reading options from event:\n", util.inspect(ev const srcBucket = event.Records[0].s3.bucket.name; // Object key may have spaces or unicode non-ASCII characte const srcKey = decodeURIComponent(event.Records[0].s3.ob const dstBucket = srcBucket + "-resized"; https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/with-s3-example-deployment-pkg.html
S3 とは? aws が提供するストレージサービス 静的なファイルをアップロード出来、閲覧可能 スケーラビリティ データ可⽤性 セキュリティ
ちなみに先程のS3 イベントは⾮同期で動きます。
動作デモ
他にも event あるよ http api sns sqs schedule...etc
何となく掴めたかな?
番外編 framework も既にあるよ
framework serverless framework aws sam これの解説始めると…Head First じゃなくなるので、 これの解説始めると…Head First
じゃなくなるので、 勘弁してね。 勘弁してね。
注意事項 OS をインストールして… OS をインストールして… というやり⽅を否定するわけではない というやり⽅を否定するわけではない
メリット・デメリット あるよ あるよ
参考: https://www.imagazine.co.jp/serverless アーキテクチャの最新テクノロジーとユースケース/
会社やグループにあったやり⽅は あるはず いきなり全導⼊というよりも... 何か部分的にやって複数⼈で慣れていく.. というア プローチが有効かも?
ちなみに… serverless 初めての⽅っていますか? S3 event 初めての⽅いますか?
感想お待ちしてます!
ご清聴 ありがとう ございました!