平成30年度 春期13テクノロジ系

基本情報 平成30年度 春期 問13:テクノロジ系に関する問題

Web システムにおいて, Web サーバとアプリケーション (AP) サーバを異なる物 理サーバに配置する場合のメリットとして, 適切なものはどれか。

  • aWeb サーバにクライアントの実行環境が実装されているので, リクエストのた びにクライアントと AP サーバの間で画面データをやり取りする必要がなく, デ ータ通信量が少なくて済む。
  • bWeb ブラウザの文字コード体系と AP サーバの文字コード体系の違いを Web サ ーバが吸収するので, 文字化けが発生しない。
  • cデータへのアクセスを伴う業務ロジックは, Web サーバのプログラムに配置さ れているので, 業務ロジックの変更に伴って, AP サーバのプログラムを変更する 必要がない。
  • d負荷が軽い静的コンテンツへのリクエストは Web サーバで処理し, 負荷が重い 動的コンテンツへのリクエストは AP サーバで処理するように, クライアントか らのリクエストの種類に応じて処理を分担できる。正答
正答:D負荷が軽い静的コンテンツへのリクエストは Web サーバで処理し, 負荷が重い 動的コンテンツへのリクエストは AP サーバで処理するように, クライアントか らのリクエストの種類に応じて処理を分担できる。

AI解説(初心者・標準・上級)

理解度に合わせて3レベルの解説を無料で読めます。

初心者向けまずはここから。やさしく要点を解説

答えは d です。

WebサーバとAPサーバを分けるメリット=役割分担で得意なことに集中させる

  • Webサーバ:軽い「静的コンテンツ(HTML/CSS/画像)」をサクッと返す
  • APサーバ:重い「動的コンテンツ(DBアクセスのある処理)」をじっくり計算

それぞれ別のサーバにすると、負荷を分散できて全体が速くなります。

👉 覚え方:役割分担で得意分野に専念!

ほかの選択肢:a〜c は技術的な前提が逆だったり間違いだったりする説明。

標準試験対策の基準レベル

なぜこれが正解か

正解は d。Webサーバ(Apache、Nginx等)は静的コンテンツ(HTML、CSS、JS、画像)の配信に最適化されており、APサーバ(Tomcat、JBoss、IIS等)は動的な業務ロジック処理に最適化されている。両者を物理的に分離することで、負荷特性に応じた処理分担が可能となり、それぞれをスケールアウトしやすくなる。リクエスト種別に応じて適切なサーバで処理することで、全体のスループットが向上する。

各選択肢の解説

  • a Webサーバにクライアント実行環境:誤り。Webサーバはクライアントとの通信を仲介するだけで、クライアント実行環境(ブラウザ等)はクライアント側にある。
  • b 文字コード違いをWebサーバが吸収:そうした機能を提供するわけではない。文字化けは別の対策(一貫したエンコーディング設定)で防ぐ。
  • c 業務ロジックがWebサーバに:本来APサーバが業務ロジックを持つ。逆。
  • d 静的をWeb、動的をAPで分担 → 正解

覚え方・ひっかけ注意

3層アーキテクチャプレゼンテーション層(Webサーバ)+ ビジネスロジック層(APサーバ)+ データ層(DBサーバ)。各層を分離することでスケーラビリティ、保守性、セキュリティが向上。物理分離・論理分離・コンテナ分離の各レベルがある。

上級誤答論破・背景理論まで深掘り

3層アーキテクチャの構造

1. プレゼンテーション層(Web層):HTTPリクエストの受信、静的コンテンツ配信、SSL終端、ロードバランシング。Apache HTTP Server、Nginx、IIS、AWS ALB/CloudFront。

2. ビジネスロジック層(AP層):動的処理、業務ロジック、セッション管理、認証・認可。Tomcat、WebLogic、WebSphere、Jetty、Node.js、PHP-FPM、Gunicorn/uWSGI。

3. データ層(DB層):データ永続化、トランザクション管理。Oracle、PostgreSQL、MySQL、SQL Server、NoSQL(MongoDB、DynamoDB)。

物理分離のメリット

  • 負荷分散:静的:動的でリクエスト特性が大きく異なる。Webサーバは軽量・並列度高、APサーバはCPU/メモリ集約。
  • スケーラビリティ:層ごとに独立スケーリング可能(水平展開)。
  • セキュリティ:DMZ(非武装地帯)にWebサーバ、内部ネットワークにAP/DBサーバを配置。多層防御。
  • 可用性:層ごとに冗長化、障害分離。
  • 保守性:各層を独立に更新・パッチ適用可能。
  • キャッシュ最適化:静的コンテンツはCDN(CloudFront、Akamai、Cloudflare)へオフロード。

デメリット・課題

  • ネットワーク遅延:層間通信のレイテンシ。
  • 複雑性増大:構成管理、デバッグ、デプロイの煩雑化。
  • コスト:サーバ・ライセンス費用増。
  • データ整合性:分散システムでのトランザクション管理。

進化系統

  • モノリシック(伝統):単一プロセスで全層を統合。
  • 3層アーキテクチャ:物理分離による役割分担。
  • SOA(Service Oriented Architecture):機能をサービス化、ESBで統合。
  • マイクロサービス:細粒度サービス、API Gateway+各種サービス独立デプロイ。Netflix、Amazon等が先導。
  • サーバレス(FaaS):AWS Lambda、Azure Functions、Cloud Run。インフラ管理不要。
  • エッジコンピューティング:CloudflareWorkers、Edge functions。Web層を CDN エッジに展開。

試験での位置づけ

FE「システムアーキテクチャ」分野で頻出。応用情報・SAではマイクロサービス、12-Factor App、CAP定理、サーキットブレーカ、Strangler Fig パターン等のクラウドネイティブ設計パターンまで踏み込む。

実装上の選択肢

  • リバースプロキシ構成:Nginx/Apacheの前段配置、SSLオフロード、静的キャッシュ。
  • ロードバランサ構成:HAProxy、ELB、Nginx Plus による複数APサーバへの分散。
  • コンテナ化:Docker + Kubernetes で各層を Pod 単位に分離。
  • CDN前置き:Cloudflare/CloudFront でグローバル分散、エッジキャッシュ。

選択肢の発展補足

bの文字化けHTTPヘッダのContent-Type charset指定メタタグDB接続文字セットプログラミング言語の内部表現等の各レイヤでの統一が必要。UTF-8 統一が現代の標準解。cの業務ロジック配置はMVCパターンでAP層に Controller/Service/Model を配置するのが定石。ファットクライアント vs シンクライアントの議論はクライアント側のロジック分担の話。

出典・引用について

出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成30年度 春期13/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。

テクノロジ系の他の過去問

1
テクノロジ系
2
テクノロジ系
3
テクノロジ系
4
テクノロジ系
5
テクノロジ系

あなたの弱点を診断して、合格までの最短ルートを

この分野を連続演習し、AIがあなたの弱点を分析。合格ナビなら基本情報の過去問を解きながら学べます。