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
The_Frugal_Architectの観点から眺めるServerless.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yoshitaka KOITABASHI
January 13, 2024
Technology
190
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The_Frugal_Architectの観点から眺めるServerless.pdf
yoshitaka KOITABASHI
January 13, 2024
More Decks by yoshitaka KOITABASHI
See All by yoshitaka KOITABASHI
変化と挑戦:NoSQLとNewSQL Serverless Databaseの技術革新とマルチテナンシーの秘密
yoshiitaka
23
6.6k
コードファーストの考え方。 Amplify Gen2から学ぶAWS次世代のWeb開発体験
yoshiitaka
3
2.1k
大規模なアジャイル開発の現場と技術負債 / Technical Debt
yoshiitaka
23
5.8k
Re:cap container Services
yoshiitaka
2
630
re:Inventに行くと何を得られ、なぜ人はラスベガスに行くのか
yoshiitaka
0
170
コンテナ支部recapをrecapしよう_気になったコンテナの周りのアップデートを紹介.pdf
yoshiitaka
1
1.1k
AWS re:Invent 2023の期間中に出たコンテナアップデート集
yoshiitaka
4
840
stripeを組み合わせたサーバレスアーキテクチャとシードのスタートアップ ビジネスをグロースするためにやったこと
yoshiitaka
3
680
アジャイル開発と時代の流れに伴うサーバレスアーキテクチャの変化
yoshiitaka
8
5.8k
Other Decks in Technology
See All in Technology
hookで自作する Claude Code の「実況ボード」
shinyasaita
2
230
「ミスを許さない手順書」を作ってみた 〜 個人的にはこれ以上できることはあまりなさそう/20260827-ssmjp-operation-procedure-update
opelab
12
9k
AI駆動開発はどこまで来たのか? ファインディの最新実態調査で読み解く現在地 Devin Con Tokyo
akiratom
4
1.9k
markdown-poster Introduction
kazamori
0
400
NANDでも描画したい!
nichica906
3
810
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
AIレビュー時代に必要なのは、SLOで引く撤退ライン
nobuoooo
0
150
internal/testlog で遊ぼう
rokuosan
0
320
Claude Teamプランの コスト最適化を考える
rfdnxbro
0
800
Digital Credentials API × OpenID4VP ブラウザ完結型本人確認の実装知見(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
330
Introduction to Bill One Development Engineer
sansan33
PRO
0
480
VPCでもFloatingIPを使いたいんだ
y_kotani
1
120
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
Optimising Largest Contentful Paint
csswizardry
37
3.9k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Making the Leap to Tech Lead
cromwellryan
135
10k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
380
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Facilitating Awesome Meetings
lara
57
7.1k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.8k
Transcript
The Frugal Architectの観点から 眺めるServerless KOITABASHI Yoshitaka 2024/1/12 yoshii0110 1
2024/1/12 yoshii0110 2 KOITABASHI Yoshitaka @yoshii0110 Momento/Community Advocate スタートアップへの技術支援 JAWS-UG
コンテナ支部運営 Amazon EC2, AWS Fargate, AWS App Runner 🥷 💕
AWS re:Invent 2023 Keynote: Amazon.com CTO Dr.Werner Vogels 2024/1/12 yoshii0110
3
The Frugal Architect 2024/1/12 yoshii0110 4 https://thefrugalarchitect.com/
コストを意識した持続可能な 最新のアーキテクチャを構築するための シンプルな考え方 2024/1/12 yoshii0110 5 Simple laws for building
cost-aware, sustainable, and modern architectures
• LAW 1: 非機能要件にコストを加えること • LAW 2: システムにかけるコストがビジネスにマッチ状況を継続すること • LAW
3: アーキテクチャを決断することはトレードオフの連続である • LAW 4: 観測できないシステムコストは青天井なコストである • LAW 5: コストを意識したアーキテクチャがコスト管理を実現する • LAW 6: 段階的なコスト最適化を適用する • LAW 7: 挑戦のない成功は思い込みにつながる 2024/1/12 yoshii0110 6 The Frugal Architectに書かれている7つの規則
非機能要件 • 特定の機能ではなく、シスステムの動作を判断するための基準 • 例えば、アクセシビリティ、可用性、拡張性、セキュリティ、移植性、 保守性、コンプライアンスなど 2024/1/12 yoshii0110 7
なぜコストが重要なのか • コストが収益よりも高くなればビジネスリスクとなってしまうため • コストへの影響を考慮することで、機能、市場投入までの時間、 効率のバランスが取れたシステムを設計する必要がある 2024/1/12 yoshii0110 8 リソースの使用量分の支出
収益
オンプレとAWSとの考え方の違い 2024/1/12 yoshii0110 9
2024/1/12 yoshii0110 10 これだけ多くのサービスがあり、 組み合わせ方は無数
我々に求められることは これらのコンポーネントの正しい組み合わせ方、使い方 2024/1/12 yoshii0110 11
アーキテクチャはトレードオフの連続 • アーキテクチャにおいては、あらゆる決定にトレードオフが発生 • コスト、パフォーマンス、回復性はよく天秤にかけられる非機能要件 • 技術のニーズとビジネスのニーズのバランスを見つける必要がある • frugalは、単に支出を最小化するのではなくて、価値を最大化すること •
何のためにコストを払うのか 2024/1/12 yoshii0110 12 LAW III: https://thefrugalarchitect.com/laws/architecting-is-a-series-of-trade-offs.html
観測できないシステムコストは未知数 作りっぱなしの資源や、無駄なスケールアップ、スケールアウトを しっぱなしでそれに気づいていないケースありません? そんな時はちゃんとコストの可視化を行い定期的にチェックしましょう。 2024/1/12 yoshii0110 13 LAW IV: https://thefrugalarchitect.com/laws/unobserved-systems-lead-to-unknown-costs.html
いつも一辺倒なアーキテクチャになってませんか? 周りに流されてませんか? 2024/1/12 yoshii0110 14
挑戦されない成功は思い込みにつながる • 単に過去にやったことがあるという理由だけで、 アーキテクチャ、テクノロジー、言語などを最良の選択として採用しがち • これによって、誤った安心感みたいなものが生まれるので、 現状の技術やアーキテクチャに疑問を持ったり、 当たり前だと思っていたことが、当たり前じゃなかったなんてことはある なので、常に疑問を持ち、最適化、改善する方法を探すことが重要 2024/1/12
yoshii0110 15 LAW VII : https://thefrugalarchitect.com/laws/unchallenged-success-leads-to-assumptions.html
AWS Well-Architectedと”コスト最適化の柱” • コストの可視化や、最適化をしようとした際に使えるのが、 COST1/COST3 • 組織レベルでのコスト要件を定めて運用するなら、COST5 • ワークロードレベルでコンピュータリソースの需要を分析するなら COST9
2024/1/12 yoshii0110 16 https://docs.aws.amazon.com/ja_jp/wellarchitected/latest/cost-optimization-pillar/welcome.html
コストの最適化は段階的に • 常に今のアーキテクチャを見つめ直し、疑問を持ち掘り下げること • 資源の使用状況を監視し、廃棄物の削減を特定する • Amazonでも、本番環境のサービスを継続的に監視し、 非効率な箇所を削減している • レイテンシとインフラストラクチャのコストを段階的に削減することで、
サービスのコストを最適化 2024/1/12 yoshii0110 17
Nubankさんの事例の話: ① • 9000万人のユーザを抱えるブラジル4番目に大きな金融機関 • 最初はクレジットカードから始まり、口座、保険、投資領域に手を出 し、サービス全体がマイクロサービスとして構成される • ただ、これらが困ったのは、全体のシステムの安定性とコストがト レードオフになってしまうことだった
2024/1/12 yoshii0110 18
Nubankさんの事例の話: ② • 原因が何かを考えた時に、爆発的なコストは安定性を実現するため に注ぎ込んでいたコンピュータリソースにあったのではないかと。 • そこで、キャッシュ戦略に着目。 • NVMe SSDとElastiCacheでのキャッシュを選択し、コスト削減
2024/1/12 yoshii0110 19
さて、改めてThe Frugal Architectを見つめると サーバレスアーキテクチャが頭をよぎる 2024/1/12 yoshii0110 20
サーバレスの特徴 1. プロビジョン不要、管理不要 2. 最低料金のない使った分だけの支払 3. 1つの API 呼び出しで利用可能 4.
計画停止がない 5. インスタンスが無い 2024/1/12 yoshii0110 21 https://www.gomomento.com/blog/fighting-off-fake-serverless-bandits-with-the-true-definition-of-serverless
では、全てのサービスがサーバレスでよくない?? ・・・いいえ。それは違います。 2024/1/12 yoshii0110 22
2024/1/12 yoshii0110 23 • 水平方向のスケーラビリティを 可能にする分散アーキテクチャ • しばらく運用した後、 アーキテクチャが想定される負荷の 5%程度しかサポートできていなかった
Amazon Prime Videoの分析ツールの例
2024/1/13 yoshii0110 24 変更後のアーキテクチャ
Amazon Prime Videoの分析ツールが サーバーレスからEC2、ECSに切り替えて 運用コストを削減 • Prime Videoの品質分析ツールは元々、大規模に実行する意図が なく作られていた •
AWS StepFunctionsを使用した分散コンポーネントで構成 • オーケストレーションワークフローと、分散コンポーネント間でデータ が受け渡される処理に莫大なコストがかかっていた • そこで、1プロセスでの実行ができるようEC2およびECSを使用した アーキテクチャに変更 • かかっていたコストの90%を削減できたという結果 2024/1/12 yoshii0110 25 https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video- monitoring-service-and-reducing-costs-by-90
コストをビジネスに合わせて 継続的に調整するシステム • システムの耐久性についても、コストがビジネスモデルに どの程度マッチしているかによって決まる。 • 例を挙げると例えば、予想しているトラフィックに対してインフラが どうスケールするのかによって、運用コストが変化する 2024/1/12 yoshii0110
26 LAW II : https://thefrugalarchitect.com/laws/systems-that-last-align-cost-to-business.html
2024/1/12 yoshii0110 27 進化するアーキテクチャを構築しろ。 アーキテクチャは時間と共に変化するもの
re:Invent 2023で登場したサーバレスサービス • Amazon Aurora Limitless Database • Amazon ElastiCache
Severless 2024/1/12 yoshii0110 28 このタイミングなぜこれらが出たのでしょう。