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
Summit後の打ち上げから考える「分散システムにおける耐障害性のある設計」
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ShigeruOda
May 27, 2023
Technology
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Summit後の打ち上げから考える「分散システムにおける耐障害性のある設計」
JAWS-UG初心者支部#56 Systems Manager 入門ハンズオン
https://jawsug-bgnr.connpass.com/event/283554/
でのLT
ShigeruOda
May 27, 2023
More Decks by ShigeruOda
See All by ShigeruOda
JAWS-UG クラウド女子会×初心者支部 コラボ会 ~子連れ参加ウェルカム勉強会!
shigeruoda
0
94
AWS re:Invent 2025 Apache Iceberg Recap
shigeruoda
1
98
Amazon Athena で JSON・Parquet・Iceberg のデータを検索し、性能を比較してみた
shigeruoda
1
560
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
6
950
CFP選定とタイムテーブル決めについて
shigeruoda
0
180
今年前半のAWSアップデートを振り返り
shigeruoda
0
150
#31 JAWS-UG主催 週刊AWSキャッチアップ (2024/5/6週)
shigeruoda
0
220
#30 JAWS-UG主催 週刊AWSキャッチアップ(2024/4/29週)
shigeruoda
0
180
#28 JAWS-UG主催 週刊AWSキャッチアップ(2024/4/15週)
shigeruoda
0
210
Other Decks in Technology
See All in Technology
いまさら聞けない人のためのAIコーディング入門
devops_vtj
0
130
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
150
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
50
56k
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.2k
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
850
Mastering Ruby Box
tagomoris
3
150
Dynamic Workersについて
yusukebe
2
630
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.2k
2026.06.13_AI時代に事業会社が「SIer出身エンジニア」を求める理由 / Why Businesses Seek Engineers with a System Integrator Background in the AI Era
jumtech
0
890
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
270
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/3 - 2026/5
oracle4engineer
PRO
1
220
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Thoughts on Productivity
jonyablonski
76
5.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
450
The Limits of Empathy - UXLibs8
cassininazir
1
350
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
The Language of Interfaces
destraynor
162
27k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Transcript
Summit後の打ち上げから考 える「分散システムにおける耐 障害性のある設計」 Shigeru Oda
Hello! Shigeru Oda AWS Community Hero AWS Samurai @OutputSeq 2
4月21日(金) 15:20-16:00(40分) 【AWS-27】 Everything fails, all the time: 分散システムにおける 耐障害性のある設計について
の内容を紹介するLTです。
セッション、Expo DeepRacer GameDay AWS Jam 打ち上げ
Summit後のグループ討論が楽しかった!!
Pub とあるPub
Pub グループがスケールする
Pub-A Pubが混んできたので、グループが移動 Pub-B
店舗は非効率だ、立ち飲みでスケールしよう (モノリスは非効率だ、マイクロサービスでスケールしよう)
グループ間の情報連携が出来ない可能性がある
システムでも同じNWがネックになる ホテル予約 ツアー予約 飛行機予約 ポイント 支払い
各サービスで障害の可能性もあり、考慮が必要 ホテル予約 ツアー予約 飛行機予約 ポイント 支払い
リトライ機能 ホテル予約 飛行機予約 ・サーバーエラー ・タイムアウト ・スロットリング 2s 2s 2s
Exponential backoff(指数関数的 後退) ホテル予約 飛行機予約 ・サーバーエラー ・タイムアウト ・スロットリング 2^0=1s 2^1=2s
2^2=4s 2^4=8s
NW障害は Exponential backoffでも軽減できない ホテル予約 飛行機予約 ホテル予約 ホテル予約 ホテル予約 ホテル予約 ホテル予約
ホテル予約 ホテル予約 ・サーバーエラー ・タイムアウト ・スロットリング … ・AWS障害 ・AZ障害
Exponential backoff(指数関数的 後退) + Jitter(ばらつき) ホテル予約 飛行機予約 ・サーバーエラー ・タイムアウト ・スロットリング
Min0 - Max1 Min0 - Max2 Min0 - Max4 Min0 - Max8
・Exponetial Backoff sleep = min(最大停止時間, 基準睡眠時間 * 2 ** 試行回数)
・Exponetial Backoff And Full Jitter sleep = random_between( 0,min(最大停止時間, 基準睡眠時間 * 2 ** 試行回数)) ・Exponetial Backoff And Equal Jitter tmp = min(最大停止時間, 基準睡眠時間 * 2 ** 試行回数) sleep = tmp / 2 + randam_between(0,temp / 2) Exponential backoff(指数関数的 後退) + Jitter(ばらつき)の種類
サーキトブレイカー(遮断機)の導入 ホテル予約 ツアー予約 飛行機予約 ポイント 支払い
通常時 ホテル予約 飛行機予約 DynamoDBにサービス名が登 録されているかチェック 登録なし
通常時 → 異常時 ホテル予約 飛行機予約 DynamoDBにサービス名が登 録されているかチェック 登録なし レコード登録 ・Service:飛行機予約
・Status:1 ・TTL:Sysdate + 10分 Exponetial Backoff And Full Jitter
Lambdaで定期チェック(死活監視) 飛行機予約 定期チェック(死活監視) レコード登録 ・Service:飛行機予約 ・Status:1 ・TTL:Sysdate + 10分
異常時 → 異常時 ・ホテル予約 ・飛行機予約 DynamoDBにサービス名が登録されて いるかチェック 登録あり ・Service:飛行機予約 ・Status:1
・TTL:Sysdate + 10分
異常時 →10分経過→ 正常時 ホテル予約 飛行機予約 DynamoDBにサービス名が登 録されているかチェック 登録なし
サーキットブレイカーを行うサービス
Polyglot Persitence (ポリグロット・パーシステンス) ホテル予約 ツアー予約 飛行機予約 ポイント 支払い Document DB
Relation DB Key-Value DB Graph DB Relation DB
Sagaパターン ホテル予約 飛行機予約 ポイント 支払い エラー発生 ホテル予約(取消) 飛行機予約(取消) ポイント(取消) 正常系
正常系 正常系 取消 取消 取消
Sageパターンの種類 オーケストレーション オーケストレーション 2.Error 1.OK 1.Rollback
Sageパターンの種類 コレオグラフィ メッセージ ブローカー 1.OK Publish 1.OK Subscribe 2.NG Publish 2.OK
Subscribe 1.RollBack Publish
私見: マイクロサービスでの耐障害性、取消処理には これらの考慮が必要と考えます。
私見: しかし、初期リリースからここまで必要? 最初から最高のUI/UXが必要なのか?
thank you