Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
サーバーレスを体感できるアプリを作った話.pdf
Search
Kazu
December 14, 2019
Programming
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サーバーレスを体感できるアプリを作った話.pdf
Kazu
December 14, 2019
More Decks by Kazu
See All by Kazu
8年もののサービスをフルリプレースした話
kazu1496
0
1.8k
Other Decks in Programming
See All in Programming
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
140
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
160
スマート反転とウェブアクセシビリティ
camiha
0
170
Webプラットフォームで議論されているセキュリティ課題 / Security issues being discussed on Web Platforms
petamoriken
0
300
PyO3 で既存 Python 評価器を Rust core 化する ー wasm-bindgen でブラウザにも配るための設計
kdash
1
560
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
1k
AIとGame Jamで、ゲームを完成させた話
takahirosaeki
0
110
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
170
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
4
3.5k
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
450
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
270
GKE で Pod の見方を変えたら、スケールアウト時の挙動を真に捉えられた話
stkk
0
100
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
How to train your dragon (web standard)
notwaldorf
97
6.8k
Building AI with AI
inesmontani
PRO
1
1.2k
HDC tutorial
michielstock
2
860
Facilitating Awesome Meetings
lara
57
7.1k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
230
First, design no harm
axbom
PRO
2
1.3k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
410
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