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
サーバーレスのポテンシャルとシステム表現 / How Serverless Loves Eve...
Search
Tori Hara
PRO
February 16, 2018
Technology
11
37k
サーバーレスのポテンシャルとシステム表現 / How Serverless Loves Event-Driven Architecture
サーバーレスはどのようなものか、どのように捉えることが望ましいかについて話しました.
Presented at Developers Summit 2018.
Tori Hara
PRO
February 16, 2018
Tweet
Share
More Decks by Tori Hara
See All by Tori Hara
カミナシでの技術的負債返済プロジェクトとその決断 / Beyond tech debts at Kaminashi
toricls
PRO
47
25k
アプリケーション開発者は Amazon ECS あるいは Kubernetes をどこまで知るべきか #AWSDevDay / You build it, you run it
toricls
PRO
56
21k
永続複数ブランチ運用は『単一のコードベース』と言えるのか / What are your justifications for the multi-branches?
toricls
PRO
17
6.4k
緩やかに死んでいくシステム / You won't be in the team forever
toricls
PRO
23
15k
技術的負債とステークホルダと説明責任と / The Debt
toricls
PRO
76
36k
Securing your Amazon ECS applications: Best practices
toricls
PRO
0
920
第2回 AWS Fargate かんたんデプロイ選手権 #AWSDevDay / The Easiest Deployment Championship 2020 - Find your winner for AWS Fargate!
toricls
PRO
18
24k
独りよがりのプラットフォーム / For Whom that Platform Runs
toricls
PRO
100
35k
Containers + EC2 Spot: 特性と実装パターンに学ぶ低コスト & 高可用アーキテクチャ / Practical Guide for Amazon EC2 Spot with Containers
toricls
PRO
13
5.4k
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
140
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
580
配列に見る bash と zsh の違い
kazzpapa3
1
150
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
450
Context Engineeringの取り組み
nutslove
0
340
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
180
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
270
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
360
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
690
KATA
mclloyd
PRO
34
15k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
710
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
74
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
New Earth Scene 8
popppiees
1
1.5k
The Pragmatic Product Professional
lauravandoore
37
7.1k
Designing Experiences People Love
moore
144
24k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
94
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Marketing to machines
jonoalderson
1
4.6k
Transcript
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のポテンシャルとシステム表現 Yasuhiro HARA Feb. 16, 2018
SUPINF Inc. // twitter.com/toricls ❤ Serverless, Docker/Container ▶︎ AWS Certified
SA / DevOps Engineer Professional ▶︎ - Yasuhiro HARA @toricls
SUPINF Inc. // twitter.com/toricls 最近のサーバーレス活動
SUPINF Inc. // twitter.com/toricls github.com/toricls/pingbot 管理画面 Slack 通知 - 外形監視
& 通知ツール -
SUPINF Inc. // twitter.com/toricls rate(1 minute) invoke http/https invoke stream
github.com/toricls/pingbot SPA Bot - 外形監視 & 通知ツール -
SUPINF Inc. // twitter.com/toricls github.com/toricls/github-codebuild-integration プルリク コミット履歴 - GitHub Push/PR
を契機に AWS CodeBuild でいい感じに CI できるようにするツール -
SUPINF Inc. // twitter.com/toricls github.com/toricls/github-codebuild-integration - GitHub Push/PR を契機に AWS
CodeBuild でいい感じに CI できるようにするツール -
SUPINF Inc. // twitter.com/toricls github.com/toricls/cobolambda - COBOL on AWS Lambda
-
SUPINF Inc. // twitter.com/toricls github.com/toricls/cobolambda - COBOL on AWS Lambda
- README.md
SUPINF Inc. // twitter.com/toricls コンピューティング・リソース調達方法の歴史
SUPINF Inc. // twitter.com/toricls コンピューティング・リソース調達方法の歴史を振り返る EC2 DC Container + Lambda
物理面の調達と運用を アウトソース リソースそのものの 調達と運用を アウトソース 調達したリソースを 自分たちで管理・運用 アプリケーションのみ 自分たちで管理・運用
SUPINF Inc. // twitter.com/toricls サーバーレス
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリット サーバーの事前プロビジョニングや管理なしで システムを構築できる
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリット サーバーの事前プロビジョニングや管理なしで 1. 機能を得られる 2. コード実行環境を得られる
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリット サービスベンダーに金を払うだけで 1. 機能を得られる 2. コード実行環境を得られる
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリットを構成する要素 1. 機能の提供 2. コード実行環境の提供 Functional
SaaS / BaaS Auth0 Firebase SendGrid ... PaaS FaaS Google App Engine Heroku ... AWS Lambda Azure Functions ...
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリットを構成する要素 1. 機能の提供 2. コード実行環境の提供 Functional
SaaS / BaaS Auth0 Firebase SendGrid ... PaaS FaaS Google App Engine Heroku ... AWS Lambda Azure Functions ... 機能と運用のアウトソース
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリットを構成する要素 1. 機能の提供 2. コード実行環境の提供 Functional
SaaS / BaaS Auth0 Firebase SendGrid ... PaaS FaaS Google App Engine Heroku ... AWS Lambda Azure Functions ... 機能と運用のアウトソース 運用のアウトソース
SUPINF Inc. // twitter.com/toricls 「サーバーレス」のメリット サーバーの事前プロビジョニングや管理なしで 1. 機能を得られる 2. コード実行環境を得られる
主に運用上のメリット
SUPINF Inc. // twitter.com/toricls 実は見えにくいメリットがある
SUPINF Inc. // twitter.com/toricls 「サーバーレス」の見えにくいメリット Functional SaaS / BaaS Auth0
Firebase SendGrid ... ▶︎ 機能性がコンポーネントとし て切り出される ▶︎ 結果、マイクロサービス的な 取り組みが必要とされる ▶︎ e.g. サーキット・ブレイカー
SUPINF Inc. // twitter.com/toricls PaaS Google App Engine Heroku ...
「サーバーレス」の見えにくいメリット ▶︎ プラットフォーム側の運用の 流儀に沿う必要がある ▶︎ 結果、アプリケーションの作 りに制約が入る ▶︎ e.g. The 12-Factor App
SUPINF Inc. // twitter.com/toricls FaaS AWS Lambda Azure Functions ...
「サーバーレス」の見えにくいメリット ▶︎ 完全なステートレスの要求 ▶︎ べき等性(*) の要求 ▶︎ ユーザーに自前でプロセス管 理をさせない設計だからこそ 得られる数々の利点
SUPINF Inc. // twitter.com/toricls FaaS AWS Lambda Azure Functions ...
「サーバーレス」の見えにくいメリット ▶︎ イベント・ドリブン プラットフォーム自体が ネイティブに
SUPINF Inc. // twitter.com/toricls Event-driven Architecture
SUPINF Inc. // twitter.com/toricls Event-driven ではないシステム
SUPINF Inc. // twitter.com/toricls Event-driven ではないシステムの例 受注管理サービス 配送予約サービス 在庫管理サービス 注文
Data Data
SUPINF Inc. // twitter.com/toricls Event-driven ではないシステムの例 受注管理サービス 配送予約サービス 在庫管理サービス 注文
Data Data 売上集計サービス Data こっちのコードに手を 入れなきゃいけない 感じになる
SUPINF Inc. // twitter.com/toricls Event-driven なシステムではどうなるか
SUPINF Inc. // twitter.com/toricls Event-driven なシステムの例 受注管理サービス 配送予約サービス 在庫管理サービス 注文
subscribe subscribe publish event
SUPINF Inc. // twitter.com/toricls 受注管理サービス 配送予約サービス 在庫管理サービス 注文 subscribe subscribe
publish event 売上集計サービス subscribe Event-driven なシステムの例 既存のコードに 手を入れなくても サービスを増やせる (理論上は) New!
SUPINF Inc. // twitter.com/toricls Dependency graphs - Service orchestration vs
Service choreography https://www.thoughtworks.com/de/insights/blog/scaling-microservices-event-stream Orchestrated services Fully choreographed services
SUPINF Inc. // twitter.com/toricls Dependency graphs - Service orchestration vs
Service choreography https://www.thoughtworks.com/de/insights/blog/scaling-microservices-event-stream Orchestrated services Fully choreographed services ツラい
SUPINF Inc. // twitter.com/toricls クラウドベンダーの イベント・ルーティングやソーシング機能が 最高にロック Event-driven ͳج൫Ͳ͏͢Δͷ
SUPINF Inc. // twitter.com/toricls ઌ΄Ͳͷ Event-driven なシステム例を AWS で DynamoDB
/ 受注情報 subscribe subscribe subscribe Lambda / 配送予約サービス Lambda / 売上集計サービス Lambda / 在庫管理サービス
SUPINF Inc. // twitter.com/toricls ઌ΄Ͳͷ Event-driven なシステム例を AWS で DynamoDB
/ 受注情報 stream stream stream Lambda / 配送予約サービス Lambda / 売上集計サービス Lambda / 在庫管理サービス Lambda / 受注管理サービス save
SUPINF Inc. // twitter.com/toricls ઌ΄Ͳͷ Event-driven なシステム例を拡張 save stream Lambda
/ Data Transform stream stream stream publish Kinesis Data Streams / Data Transform
SUPINF Inc. // twitter.com/toricls with TTL Event-driven なシステムの別の形 save item
deletion event stream archive
SUPINF Inc. // twitter.com/toricls with TTL Event-driven なシステムの別の形 save item
deletion event stream archive サーバーレス・アーキテクチャーの真髄
SUPINF Inc. // twitter.com/toricls 「サーバーレス」システム設計時の思考フロー
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムは イベント・ドリブンな形で 表現できないか
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムは イベント・ドリブンな形で 表現できないか YES
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムは イベント・ドリブンな形で 表現できないか やる YES
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムは イベント・ドリブンな形で 表現できないか やる YES
NO
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムは イベント・ドリブンな形で 表現できないか やる YES
NO もう一度考える
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムを イベント・ドリブンな形で 表現できないか やる YES
NO もう一度考える なぜこんなことをするか
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステム設計時の思考フロー そのシステムを イベント・ドリブンな形で 表現できないか やる YES
NO もう一度考える アーキテクチャー的な利点 サーバー管理からの解放
SUPINF Inc. // twitter.com/toricls まとめ
SUPINF Inc. // twitter.com/toricls 「サーバーレス」なシステムについてのまとめ ▶︎ 運用面だけでなくアーキテクチャー面のメリットがわりとデカい ▶︎ アーキテクチャー面のメリットはプラットフォームの特性を生かすことを意識しないと得に くいことも
▶︎ イベント・ドリブンな形でシステムを表現できないか?という考え方 ▶︎ サービス間の相互作用をイベントとして表現できれば ▶︎ サービス間が疎結合に保たれて ▶︎ 洗練されたアーキテクチャーが手に入る ▶︎ サーバーレス楽しい
SUPINF Inc. // twitter.com/toricls おまけ
SUPINF Inc. // twitter.com/toricls 私の脳内「サーバーレス」世界 サーバー管理からの解放 サーバーレス・アーキテクチャー Fully-Managed FaaS イベント・ドリブン・アーキテクチャー
ベンダー様の思惑 ロックインのお花畑 「俺の FaaS」
SUPINF Inc. // twitter.com/toricls λ おしまい