変更要約: AZ-204 第1章を Associate 級に深掘り(比較表・シナリオ・FAQ・ひっかけ+深掘り段落、図を日本語化)
1.1App Service による Web アプリ開発
Azure App Service による Web アプリ/API のマネージドホスティング、App Service プラン、デプロイスロット(ステージング→スワップ)、スケール(アップ/アウト)といったコンピュート開発の基礎を理解します。AZ-204 の「Azure コンピュートソリューションの開発」の出発点です。
Azure で Web アプリや API をOS 管理なしに素早く公開できるのが Azure App Service です(PaaS)。開発者はコードのデプロイに集中できます。
1.1.1App Service の要素
- App Service プラン:アプリが動くコンピュート(サイズ/価格帯)を定義する。複数アプリで共有できる。
- デプロイスロット:ステージングで検証し、本番とスワップしてゼロダウンタイムで反映する。
- スケール:スケールアップ(プランのサイズ変更)とスケールアウト(インスタンス数の増減)。
- 設定:アプリ設定(環境変数)や接続文字列で構成を外出しする。機密は Key Vault 参照が望ましい。
「ゼロダウンタイムの本番反映=デプロイスロットのスワップ」「負荷に応じた台数調整=スケールアウト」「OS 管理不要の Web ホスティング=App Service」 は AZ-204 で頻出です。スロットのスワップで暖機済みのインスタンスへ切り替えます。
App Service は Web アプリ/API/コンテナを動かす PaaS です。アプリは App Service プラン 上で動き、プランの SKU/レベル(Free/Shared→Basic→Standard→Premium v3→Isolated)で性能・スケール上限・機能(カスタムドメイン/SSL・スロット数・VNet 統合)が決まります。デプロイスロット はステージングで検証してから本番と スワップ し、スワップ時に ウォームアップ 済みインスタンスへ切り替えるためゼロダウンタイム。問題時はスワップを戻すだけでロールバックできます。スロット設定 にした項目(接続文字列など)はスワップで入れ替わらずスロットに固定されます。スケールは スケールアップ(プランの SKU 変更)と スケールアウト(インスタンス数・自動スケール条件)。設定は アプリ設定(環境変数)/接続文字列 で外出しし、機密は Key Vault 参照 で安全に注入、アプリの ID は マネージド ID を使います。デプロイは ZIP/Run From Package・CI/CD・コンテナ。診断は App Service 診断/ログストリーム/Application Insights。判断軸は「ゼロダウンタイム=スロットスワップ」「台数=スケールアウト」「性能/機能=SKU 変更(アップ)」「機密=Key Vault 参照」。
| やりたいこと | 手段 |
|---|---|
| ゼロダウンタイムで本番反映 | デプロイスロットのスワップ |
| 負荷に応じた台数調整 | スケールアウト(自動スケール) |
| 性能/機能を上げる | SKU 変更=スケールアップ |
| 機密を安全に注入 | Key Vault 参照+マネージド ID |
シナリオ:本番を無停止で更新し、DB 接続文字列はスロットごとに固定したい。 ステージングスロットへデプロイ→検証→本番とスワップ(ウォーム済みでゼロダウンタイム)。接続文字列はスロット設定にしてスワップで入れ替わらないよう固定。DB パスワードは Key Vault 参照+マネージド ID で注入。急なアクセス増は 自動スケール(スケールアウト)で吸収します。
Q. 無停止リリース? デプロイスロットのスワップ。Q. 台数を増やす? スケールアウト。Q. 性能/機能を上げる? SKU 変更(スケールアップ)。Q. 機密の注入は? Key Vault 参照+マネージド ID。Q. スワップで入れ替えたくない設定は? スロット設定に指定。
混同に注意:
①スケールアップ(SKU 変更)とスケールアウト(台数)は別物——負荷分散は台数、機能/上限解放は SKU。
②スロットは SKU により数や利用可否が異なる(Free/Basic では使えない/少ない)。
③スロット設定にしないと接続文字列もスワップされてしまう。
④アプリ設定はコードに直書きせず外出し、機密は Key Vault 参照で。
スロット設定(slot setting)を使うと、接続文字列など一部の設定をスワップ時に入れ替えない(スロットに固定する)ことができます。
1.1.2この節のまとめ
- App Service=PaaS の Web ホスティング(プラン=コンピュート)
- スロットでゼロダウンタイム、スケールアップ/アウト
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. App Service で本番をゼロダウンタイムで更新したい。最も適した機能はどれですか?
Q2. OS やパッチ管理を気にせず Web アプリをホスティングできる Azure の PaaS はどれですか?
Q3. 負荷の増加に応じて App Service のインスタンス数を増やすのは何と呼ばれますか?

