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
サーバーレスを体感できるアプリを作った話.pdf
Search
Kazu
December 14, 2019
Programming
0
140
サーバーレスを体感できるアプリを作った話.pdf
Kazu
December 14, 2019
Tweet
Share
More Decks by Kazu
See All by Kazu
8年もののサービスをフルリプレースした話
kazu1496
0
1.7k
Other Decks in Programming
See All in Programming
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
310
スケールする組織の実現に向けた インナーソース育成術 - ISGT2025
teamlab
PRO
2
170
私の後悔をAWS DMSで解決した話
hiramax
4
210
Android 16 × Jetpack Composeで縦書きテキストエディタを作ろう / Vertical Text Editor with Compose on Android 16
cc4966
2
270
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
340
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
510
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
470
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
450
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
130
Testing Trophyは叫ばない
toms74209200
0
890
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
チームのテスト力を鍛える
goyoki
3
910
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Building an army of robots
kneath
306
46k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Facilitating Awesome Meetings
lara
55
6.5k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Rails Girls Zürich Keynote
gr2m
95
14k
Producing Creativity
orderedlist
PRO
347
40k
Side Projects
sachag
455
43k
KATA
mclloyd
32
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
Transcript
サーバーレスを体感できるアプリを作った話 石倉和真 @kazu_real20 1
自己紹介👀 ✔ イシクラカズマサ ✔ SNSにおける情報拡散パターンの研究してる ✔ サーバーレス化とかNuxt.js書いたりしてる ✔ 早く研究終わらせたい所存
もくじ • 作るに至った経緯 👈 • サーバーレスについて • Serverless Framework • デプロイしてみよう
• 実際に動かしてみよう • 感想 3
作るに至った経緯 AWS ECS AWS Cognito Aurora DB (MySQL) AWS ECR
新規アプリをより運用しやすく、且つ低コストに抑えるようなアーキテクチャ にしたい... 4
作るに至った経緯 新規アプリをより運用しやすく、且つ低コストに抑えるようなアーキテクチャ にしたい... AWS ECS AWS Cognito Aurora DB (MySQL)
AWS ECR この辺りをサーバーレスにしたい... 5
作るに至った経緯 AWS ECS AWS Cognito Aurora DB (MySQL) AWS ECR
新規アプリをより運用しやすく、且つ低コストに抑えるようなアーキテクチャ にしたい... でも誰もサーバーレス化をしたことないな... 6
作るに至った経緯 AWS ECS AWS Cognito Aurora DB (MySQL) AWS ECR
新規アプリをより運用しやすく、且つ低コストに抑えるようなアーキテクチャ にしたい... それなら自分がやるか👊 7
作るに至った経緯 AWS ECS AWS Cognito Aurora DB (MySQL) AWS ECR
新規アプリをより運用しやすく、且つ低コストに抑えるようなアーキテクチャ にしたい... とりあえずプロトタイプでも作るか😲 8
もくじ • 作るに至った経緯 • サーバーレスについて 👈 • Serverless Framework • デプロイしてみよう
• 実際に動かしてみよう • 感想 9
サーバーレスアーキテクチャってなに? 一言でいうと 「マネージド・サービスを活用することで、サーバーを 使わずにアプリケーション開発を行う設計」のこと 「サーバー管理をする必要がなくなる」のであって「サー バーが無くなる」わけではない 10
サーバーレスの特徴 • サーバー管理をする必要がなくなる • 柔軟にスケーリングする • サービスを止めることなく良い感じの状態を維持する • 使った分だけ課金される 11
サーバーレスとFaaS 関数・機能単位の処理をサーバー管理不要で実行できるサービス FaaS AWS Lambda Google Clound Functions Azure Functions
IBM Cloud Functions 12
サーバーレスAppの構成 SPA 13
サーバーレスAppの構成 Serverless Frameworkを使って サービスをデプロイする🚀 14
もくじ • 作るに至った経緯 • サーバーレスについて • Serverless Frameworkについて 👈 • デプロイしてみよう
• 実際に動かしてみよう • 感想 15
Serverless Frameworkについて Q. Serverless Frameworkってなに? A. サーバーレスAppの構成・管理・デプロイをするためのツール • Node.js製のオープンソースフレームワーク
• 関数やイベントをCLIを使って簡単にデプロイできる • AWS、Azure、GCPなど様々なプラットフォームに対してデプロイできる 特徴 16
もくじ • 作るに至った経緯 • サーバーレスについて • Serverless Frameworkについて • デプロイしてみよう 👈
• 実際に動かしてみよう • 感想 17
デプロイしてみよう(インストール編) serverlessコマンドをインストールする $ npm install serverless . . $ serverless
--version Framework Core: 1.55.1 Plugin: 3.2.1 SDK: 2.1.2 Components Core: 1.1.2 Components CLI: 1.4.0 18
デプロイしてみよう(YAMLカキカキ編) サービス内に以下の4つのコンポーネントを含めYAMLで定義する • FUNCTIONS(Lambda関数) • EVENTS(Lambda関数へのトリガー) • RESOURCES(Lambdaが利用するAWSリソース) • PLUGINS
サービス:Serverless Frameworkとして複数のリソースを管理するための単位 19
20
21
デプロイしてみよう 以下のコマンドでサービスをデプロイする $ serverless deploy -v デプロイされるとスタックが作成され、定義したそれぞれのサービスが立ち上が る 22
もくじ • 作るに至った経緯 • サーバーレスについて • Serverless Frameworkについて • デプロイしてみよう
• 実際に動かしてみよう 👈 • 感想 23
もくじ • 作るに至った経緯 • サーバーレスについて • Serverless Frameworkについて • デプロイしてみよう
• 実際に動かしてみよう • 感想 👈 24
感想 • インフラ構成をコード化しているので、再利用性が高い上に、他人がインフ ラ構成を理解しやすい • サーバー管理をしなくて良いので、アプリ開発に集中できる • サービス間が疎結合なので、要件が変更した際に既存コードに手を加える ことなく対応できる サーバーレス最高😊
25
リポジトリ公開していますので興味がある方はぜひ👍 26