けっこう曖昧なので調べてみました。
ABテスト
-
サイト・アプリを改善する際に、どっちのやり方がいいか両方本番にデプロイして調べる方法です
-
アクセスしたユーザーに対してランダムに表示する機能を切り替え、コンバージョン等の結果を測定します
- 試したい複数の機能に加え、「ユーザーを振り分ける機能」、「振り分けたユーザーから結果を測定する機能」が必要になります
-
改善案が間違っていた場合、一部の本番のユーザーが離脱するなどの悪影響にもなりかねます
- 振り分けをしているので全ユーザーにはなりませんが、意識する必要があります
カナリアリリース
- 新機能リリース等の際に一気にリリースするのではなく、一部ユーザーに振り分けて様子見しながら徐々に新機能に移行する方法です
- ABテストとの違いは、別に機能を試して調査したいのではなく、リリースに関わるトラブルのリスク軽減が目的であることです
- 負荷等の問題が発覚したらロールバックする。振り分けしているので全ユーザーには影響しないで済むこともある
- 「ユーザーを振り分ける機能」が必要です