書籍
Release It!, 2nd Edition
Design and Deploy Production-Ready Software
Michael T. Nygard
概要
サーキットブレーカー、バルクヘッド、タイムアウトといった、システム障害を 局所化し連鎖的ダウンを防ぐための安定性パターンを解説するバイブル。
対象読者
- 本番環境の障害対応に関わるエンジニア
- 防御的プログラミングを身につけたい開発者
タグ
奥付
- 出版社
- Pragmatic Bookshelf
- ISBN
- 978-1680502398
- 出版日
- 2018年2月
この本を手に入れる
※ 上記は Amazon アソシエイトによる広告リンクです。関連書籍
前提となる書籍
- 推奨前提
マイクロサービスパターン
Microservices Patterns
Chris Richardson
理由: 分散システムを実装する力がついたら、それが「壊れたときにどう振る舞うか」を設計する視点が不可欠になる。Release It! はサーキットブレーカーやバルクヘッドといった安定性パターンを与え、障害が連鎖しないシステムを設計させる。
- 参考
Go言語による並行処理
Concurrency in Go
Katherine Cox-Buday
理由: 並行処理を書けるようになると、タイムアウト・リトライ・リソース枯渇といった「並行ゆえの障害」に直面する。Release It! はこうした失敗を前提に置く安定性パターンを与え、並行コードを本番で生き残らせる設計を教える。
- 参考
Kubernetes in Action
Kubernetesの実用ガイド
Marko Lukša
理由: Kubernetes で分散システムを運用すると、一部の障害が連鎖して全体を巻き込むカスケード障害に直面する。Nygard『Release It!』はサーキットブレーカーやバルクヘッドなど、障害を封じ込める安定性パターンを体系化し、K8s 運用に「壊れても止まらない」設計を持ち込む。
- 参考
入門 監視
モダンなモニタリングのためのデザインパターン
Mike Julian
理由: 『入門 監視』で障害を検知する仕組みを整えたら、次は検知した障害をシステム側でどう受け流すかという設計へ。Nygard『Release It!』のサーキットブレーカーやタイムアウトといった安定性パターンは、監視で見えた障害を自動的に封じ込める実装の引き出しになる。
次に読む書籍
- 推奨前提
オブザーバビリティ・エンジニアリング
分散システムの信頼性とパフォーマンス
Charity Majors, Liz Fong-Jones, George Miranda
理由: Nygard『Release It!』でサーキットブレーカー等の安定性パターンを実装したら、それらが本番で実際に効いているかを観測する必要がある。『オブザーバビリティ・エンジニアリング』はパターンの発動状況やシステムの内部挙動を可視化し、「壊れない設計」が機能していることを検証可能にする。
- 参考
ドラゴンクエストXを支える技術
大規模オンラインRPGの舞台裏
青山公士
理由: 安定性パターンで「壊れにくいシステム」の設計原則を学んだら、それを長期運用で実践した事例から学ぶ。大規模オンラインゲームの継続運用は、理論上の安定性設計が現実の負荷と障害にどう晒されるかを示す生きた教材になる。
- 参考
SRE サイトリライアビリティエンジニアリング
Googleの信頼性を支えるエンジニアリングチーム
Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy
理由: 『Release It!』の安定性パターンは個々のサービスを壊れにくくするが、システム全体の信頼性をどう目標化し組織で運用するかは別の問い。Google『SRE サイトリライアビリティエンジニアリング』はエラーバジェットや障害対応の体制で、個別の耐障害設計を組織的な信頼性管理へ統合する。