第2部まとめ
このページで学ぶこと
Section titled “このページで学ぶこと”- 第2部で学んだ概念のつながり
- Webサイトの構成を、管理負荷・費用・更新・障害の観点で比較する方法
- サーバーレスやCDNを「流行の技術」ではなく判断軸として捉える方法
- 実案件で構成案をレビューするときの質問
第2部の全体像
Section titled “第2部の全体像”flowchart LR
U[利用者] --> DNS[DNS]
DNS --> EDGE[CDN・WAF]
EDGE --> HOST[静的ホスティング<br/>Webサーバー]
HOST --> FUNC[サーバー側処理<br/>サーバーレス関数]
HOST --> CMS[CMS]
HOST --> API[外部API]
FUNC --> DATA[データ・外部サービス]
Webサイトを動かす基盤は、一つのサーバーとは限りません。
重要なのは、次の問いへ答えられることです。
- どこでファイルを配信するか
- どこで動的処理を行うか
- どこにデータを保存するか
- どこにキャッシュがあるか
- どの通信をWAFで保護するか
- 誰が契約・設定・監視・復旧するか
この部で学んだ判断軸
Section titled “この部で学んだ判断軸”サーバーやOSを自社で管理するのか、クラウドやSaaS事業者へ任せるのかを整理します。
自由度と制約
Section titled “自由度と制約”自由度の高い環境は、特殊要件へ対応しやすい一方、管理対象が増えます。マネージドサービスは管理を減らせますが、仕様や料金へ依存します。
静的ホスティングでは、CMS更新、ビルド、デプロイ、キャッシュ削除の経路を確認します。アクセス時に生成する構成では、サーバー処理やランタイム障害を考慮します。
月額固定だけでなく、通信量、保存量、ビルド、関数実行、ログ、外部API等の従量費用を確認します。
サービスを分割すると、一つの障害が全体を止めにくくなる場合があります。一方、障害箇所や連絡先は増えます。
技術構成だけでなく、契約者、管理者、作業者、承認者、一次対応者を決めます。
構成案をレビューするときの質問
Section titled “構成案をレビューするときの質問”サーバー・クラウド
Section titled “サーバー・クラウド”- なぜこのホスティング方式を選ぶのか
- OSやミドルウェアの管理は誰が行うのか
- 開発・検証・本番環境はどう分けるのか
- 通常時と繁忙時の費用はいくらか
- バックアップと復元はどうするのか
サーバーレス・静的ホスティング
Section titled “サーバーレス・静的ホスティング”- 静的に配信する範囲はどこか
- 動的な機能はどのサービスで処理するか
- CMS更新から反映まで何分かかるか
- ビルドが失敗した場合はどうするか
- プレビューは本番と同じ条件で確認できるか
CDN・キャッシュ
Section titled “CDN・キャッシュ”- 何をキャッシュするか
- キャッシュを何分・何日保持するか
- 緊急時に誰が削除できるか
- オリジンへ直接アクセスできるか
- 更新されない場合の切り分け手順はあるか
WAF・セキュリティ
Section titled “WAF・セキュリティ”- 何を守る目的で導入するか
- 遮断ログを誰が確認するか
- 正常な通信を誤って遮断した場合に誰が調整するか
- WAF以外の権限・更新・診断はどうするか
- 各サービスの契約者は誰か
- 管理者権限を持つのは誰か
- 障害を誰が検知し、誰が一次対応するか
- 外部事業者へ誰が問い合わせるか
- 契約終了時に設定・データをどう引き渡すか
ケーススタディ1:コーポレートサイトのリニューアル
Section titled “ケーススタディ1:コーポレートサイトのリニューアル”- 約500ページ
- 更新はヘッドレスCMS
- ログイン機能なし
- 月数回ニュース更新
- 大きなアクセス集中は少ない
- グローバル配信
- 保守担当は少人数
- Astro等で静的HTMLを生成
- 静的ホスティング+CDNで配信
- CMS更新時にWebhookでビルド
- 問い合わせは外部フォームサービスまたはサーバーレス処理
- DNS・証明書・CDNはクライアント契約
PMが確認すること
Section titled “PMが確認すること”- 500ページの通常・最大ビルド時間
- CMS更新から公開までの所要時間
- ビルド失敗時の通知
- プレビュー方法
- キャッシュ削除
- フォームの個人情報管理
- クライアント側の管理権限
- 契約終了時のソース・設定引継ぎ
この要件では、常時稼働するWebサーバーが必須とは限りません。ただし、更新反映とビルド運用を設計する必要があります。
ケーススタディ2:会員向けWebサービス
Section titled “ケーススタディ2:会員向けWebサービス”- ログイン
- 利用者ごとの情報
- 外部業務システムと連携
- 毎日データ更新
- 一部リアルタイム処理
- 個人情報を扱う
構成上の考え方
Section titled “構成上の考え方”静的ホスティングだけでは完結しません。
- 認証
- API
- データベース
- サーバー側処理
- 権限
- 監視
- ログ
- バックアップ
- セキュリティ対応
が必要です。
ページの一部を静的配信し、会員機能をサーバー・コンテナ・PaaS・サーバーレス関数等で実装する構成も考えられます。
PMが確認すること
Section titled “PMが確認すること”- 認証と権限の責任者
- 個人情報の保存先
- 外部システム障害時の動作
- APIタイムアウト
- 監視・夜間対応
- 復旧目標
- セキュリティ診断
- 月額運用費
ケーススタディ3:キャンペーンサイト
Section titled “ケーススタディ3:キャンペーンサイト”- 公開期間は3か月
- テレビCM後にアクセス集中
- 応募フォームあり
- 当選者情報を扱う
- 終了後はアーカイブする
適した考え方
Section titled “適した考え方”ページ本体は静的ホスティング+CDNと相性がよい可能性があります。
ただし応募フォームには、次が必要です。
- 入力検証
- スパム・Bot対策
- 個人情報の保存
- 重複応募制御
- 大量送信への耐性
- 通知・ログ
- 終了後のデータ削除
「サイトが静的だからシステムではない」と考えないことが重要です。
クライアントから「サーバーレスなので保守費用は不要ですよね」と言われました。どのように説明しますか。
回答例
OSや物理サーバーの管理は減りますが、CMS、ビルド、権限、キャッシュ、外部API、ログ、料金監視、障害切り分け、ライブラリ更新等は残ります。保守対象がなくなるのではなく変わる、と説明します。CMS更新後、制作会社のPCでは新しい内容が見える一方、クライアントには古い内容が見えています。何を確認しますか。
回答例
ブラウザキャッシュ、CDN拠点ごとのキャッシュ、ログイン状態、URL差、ビルド・デプロイ結果を確認します。誰にどのURLで、いつから起きているかも整理します。WAFを導入したため、脆弱性診断を省略したいという意見が出ました。どう判断しますか。
回答例
WAFは通信を監視・遮断する多層防御の一部であり、アクセス制御、設定ミス、秘密情報、業務ロジック、古いライブラリ等をすべて防ぐものではありません。診断やレビューの代替にはなりません。制作会社名義で契約したCMSをクライアントが5年間使います。どのようなリスクがありますか。
回答例
制作会社変更・契約終了時の管理権移管、請求、データ所有、解約、サポート問い合わせ、担当退職等のリスクがあります。可能ならクライアント名義または正式な移管手順を用意します。SSGサイトが数万ページに増え、更新反映に長時間かかっています。どのような選択肢がありますか。
回答例
差分ビルド、オンデマンド再生成、ページ単位の再検証、更新頻度の高い部分だけ動的取得、ビルド環境強化、コンテンツ分割等を比較します。表示速度だけでなく運用と費用を含めて判断します。第3部へ進む前の確認
Section titled “第3部へ進む前の確認”次を自分の言葉で説明できれば、第2部の基礎は理解できています。
- サーバーとクラウドの関係
- サーバーレスでもサーバーは存在すること
- 静的ホスティングとサーバーレス関数の役割の違い
- S3とCloudFrontの役割
- CDNのオリジン・エッジ・キャッシュ
- WAFが守る範囲と守れない範囲
- 契約者・管理者・作業者の違い
- 外部サービス障害時にPMが行うこと
次の第3部では、こうした基盤へ配置されるHTML、JavaScript、フレームワーク、レンダリング方式、ビルドについて学びます。