
343
第十七章 本番環境へのリリース
図 17-1 各企業は通常、本番環境へのリリースをどのように行っているのか?明らかに不完全な試みではあるものの、
一般的な各アプローチならびにアプローチ間の違いを視覚化した。点線の枠は「よく起こるが必ず起こるわけではない」
ことを意味する。
開発
ロールアウト
ロールアウト後
デプロイ
CI/CD
1.
スタートアップ
コードを書く
+ ローカルで
検証する
本番環境への
プッシュ
客がバグ
報告を送信
コードレビュー
CI による
チェック
トランク
へのマージ
3.
大手テック企業
コードを書く
+ ローカルで
検証する
機能フラグ等を
通じた段階的
ロールアウト
モニタリング、
アラート、
オンコール
コードレビュー
CI による
チェック
コストが比較的
高い自動テスト
を実行
トランク
へのマージ
マージ競合
の解決
2.
伝統的企業
コードを書く
+ ローカルで
検証する
日時を指定した
ロールアウトの
一部として本番
環境へリリース
客のフィード
バックを収集
QA がブランチ
やユーザー
受け入れ
テスト(UAT)
環境を検証
リリース候補
ブランチへの
マージ
QAが発見した
問 題を修正
4.
メタの主力
プロダクト
コードを書く
+ リモートの
サーバーで
検証する
4 個以下の環境
への、段階的
自動カナリア
ロールアウト
モニタリング、
アラート、 ...