プログレッシブ デリバリー

「リリース」を、一か八かのイベントにしない
確実なカナリア リリースへ

インフラの複雑な設定は不要。ユーザー ID 単位の精密な制御と自動ロールバックで、
影響範囲を最小限に抑えながら安全に機能を公開します。

従来のカナリア リリースが抱える課題

「カナリア リリース」は安全なリリースの定石ですが、ロード バランサーや Kubernetes (K8s) などのインフラ層で実装しようとすると、多くのエンジニアが壁に直面します。

インフラ構成が複雑

本番環境を多重化する必要があり、ルーティング設定やセッション維持 (Sticky Session) の管理が非常に困難です。

ターゲットが粗い

「トラフィックの 5%」といった大雑把な振り分けしかできず、「社内ユーザーのみ」「β 版契約者のみ」といった細かい指定ができません。

切り戻しが遅い

バグ発覚時、インフラの設定変更や再デプロイが必要となり、完全なロールバックまでに数分〜数時間を要します。

インフラ層 vs アプリケーション層 (LaunchDarkly)

比較項目 従来のインフラ ベース
(AWS ALB, K8s Istio 等)
LaunchDarkly
アプリケーション ベース
制御の粒度 リクエスト単位
どのユーザーかは識別せず、ランダムに振り分け。
ユーザー ID / 属性単位
「特定の顧客」「特定の地域」など文脈に応じた制御が可能。
実施コスト 高い
並行稼働環境が必要なため、インフラ リソースが倍増することも。
低い
既存の環境内でフラグ判定を行うため、追加インフラは不要。
ロールバック 遅い (数分〜)
ルーティング変更の伝播や再デプロイ待ちが発生。
即時 (数ミリ秒)
キル スイッチを OFF にするだけで、全ユーザーが一瞬で旧版へ。
担当者 SRE / インフラ エンジニア
インフラ設定変更の権限が必要。
開発者 / PM
管理画面から誰でも安全に操作可能。

LaunchDarkly で実現する
理想的なプログレッシブ デリバリー

01
社内テスト (Dogfooding)

コードは本番環境にデプロイ済みですが、一般ユーザーには OFF になっています。管理画面でターゲットを「社内ユーザー (自分たち)」だけに設定し、本番データを用いた最終確認を行います。

02
スモール スタート (1% リリース)

問題を早期発見するため、適用範囲を全ユーザーの 1% に設定します。インフラの再起動は不要です。スライダーを動かすだけで、即座にトラフィックが流れます。

03
モニタリングと自動遮断

Datadog や New Relic と連携し、エラーレートを監視します。もし閾値を超えた場合、LaunchDarkly の「Flag Trigger」が作動し、自動的にフラグを OFF にして影響を食い止めます(人間が寝ていても安全です)。

04
100% へのロールアウトとクリーンアップ

安全が確認されたら、段階的に 10% → 50% → 100% と公開範囲を広げます。全ユーザーへの適用が完了したら、Code References 機能を使ってコードからフラグを削除し、完了です。

カナリア リリース Q&A

A. かつて炭鉱労働者が、有毒ガスを早期検知するためにカナリアを籠に入れて連れて行ったことに由来します。ソフトウェア開発では、新機能を全ユーザーに公開する前に、ごく一部のユーザー(カナリア)にだけ公開してバグがないか確認するため、こう呼ばれています。

A. 目的が異なります。カナリア リリースは「リスク回避」が目的で、バグがないかを確認するために行います。一方、A/B テストは「効果測定」が目的で、どちらのデザインや機能がよりユーザーに好まれるか(コンバージョンが高いか)を比較するために行います。ただし、LaunchDarkly は両方の機能を備えています。

A. これが最も難しいポイントです。基本的には「前方互換性 (Forward Compatibility)」を維持する必要があります。つまり、データベースの変更(カラム追加など)を先に行い、旧バージョンのアプリでも新バージョンのアプリでもエラーが出ない状態にしてから、アプリ側のカナリア リリースを行います。LaunchDarkly を使えば、アプリの挙動だけを制御できるので、DB 移行との切り離しがしやすくなります。

リリースから「恐怖」を取り除き、自信に変えよう

LaunchDarkly なら、A/B テストやカナリア リリースといった高度な戦略も数クリックで完結します。
リスクを抑えながら、確実なデータに基づいてプロダクトを進化させましょう。

他のガイドを見る

エンジニア向け A/B テストガイド

UIの表面的な変更だけでなく、バックエンド ロジックやアルゴリズムの真価を検証する、エンジニア主導の実験について解説します。

詳しく見る
アジャイル開発ガイド

デプロイの恐怖を取り除き、エンジニアに心理的安全性とアジャイル開発本来のスピードをもたらす方法を解説します。

詳しく見る