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
150
サーバーレスを体感できるアプリを作った話.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
ドメイン駆動設計のエッセンス
masuda220
PRO
15
6k
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.6k
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
200
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
220
CSC305 Lecture 11
javiergs
PRO
0
310
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
260
contribution to astral-sh/uv
shunsock
0
550
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9.1k
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
140
CSC305 Lecture 09
javiergs
PRO
0
320
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
390
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
130
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Agile that works and the tools we love
rasmusluckow
331
21k
Statistics for Hackers
jakevdp
799
220k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Language of Interfaces
destraynor
162
25k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
A better future with KSS
kneath
239
18k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
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