基本情報 平成24年度 春期 問13:テクノロジ系に関する問題
3 層ビクライアントサーバシステム構成で実現した Web システムの特徴として, 適切 なものはどれか。
- aHTML で記述されたプログラムをサーバ側で動作させ, クライアントソフトはそ の結果を画面に表示する。
- b業務処理の変更のたびに, Web システムを動作させるための業務処理用アプリケ ーションを配布し. クライアント端末にインストールする必要がある。
- c業務処理はサーバ側で実行し. クライアントソフトは HTML の記述に従って, そ の結果を画面に表示する。正答
- dクライアント端末には, サーバ側からの HTTP 要求を待ち受けるサービスを常駐 させておくぐく必要がある。
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは c です。
3層クライアントサーバ=「プレゼン層(画面)」「業務処理層(中の計算)」「データ層(DB)」に分けた構成。Webシステムでは画面の表示だけブラウザでして、計算は全部サーバ側でやります。お店の店員(サーバ)が裏で計算、お客さん(クライアント)は結果を見るだけ、というイメージ。
👉 覚え方:「業務処理はサーバ側、表示だけクライアント」。
ほかの選択肢:a HTMLはプログラム言語ではない/b 毎回インストール不要(Web の良さ)/d クライアントが待ち受け=逆の構成。
なぜこれが正解か
正解は c。3層クライアントサーバシステム(プレゼンテーション層・ファンクション層・データ層)で実現するWebシステムでは、業務処理はWebサーバ側(ファンクション層)で実行され、クライアント(ブラウザ)はサーバから受信したHTMLの記述に従って結果を表示するだけ。これによりクライアントへのソフトインストール不要・修正配布不要・端末非依存というメリットが得られる。
各選択肢の解説
- a:HTMLはマークアップ言語であり、プログラム言語ではない。サーバ側で動作するのはCGI・サーブレット・PHP等。
- b:3層化の主目的の1つはクライアント配布レスにすることで「毎回インストール必要」は逆。
- d:クライアントが常駐待ち受けはサーバの役割。Webシステムではクライアントが要求してサーバが応答する。
覚え方・ひっかけ注意
3層=プレゼン(画面)・ファンクション(業務)・データ(DB)。Webシステムでは「ブラウザ=プレゼン層、Webサーバ=ファンクション層、DBサーバ=データ層」と完全に対応。クライアントが端末非依存(HTMLが表示できれば良い)になる点がWebシステムの本質。
理論的背景
3層アーキテクチャは2層クライアントサーバ(C/S)の課題(クライアントへの業務ロジック配布・バージョン管理困難・大量配信負荷)を解決するため1990年代後半に普及。MVCパターン(Model-View-Controller)と組み合わせて、保守性・スケーラビリティ・再利用性を高める。Webシステムは本質的に3層構造で、ブラウザ(プレゼン)→Webサーバ+アプリケーションサーバ(ファンクション)→DBサーバ(データ)の典型構成。
実務での使われ方
アプリケーションサーバ(Apache Tomcat、JBoss WildFly、IBM WebSphere、Oracle WebLogic、Node.js、Pythonの WSGI/ASGIサーバ)が業務処理層を担う。データ層は RDBMS(MySQL、PostgreSQL、Oracle、SQL Server)やNoSQL(MongoDB、Cassandra、DynamoDB)。各層は独立スケールでき、ロードバランサ・ファイアウォール・WAF・CDNと組み合わせて高可用性・高セキュリティを実現。現代のクラウドではコンテナ(Docker・Kubernetes)・マイクロサービスでさらに細かく分解する。
試験での位置づけ
基本情報・応用情報のシステム構成・Web技術分野で必出。クライアントサーバ(C/S)の2層・3層・n層構成、シンクライアント・ファットクライアント、Webシステム、SPA(Single Page Application)、SSR(Server-Side Rendering)、CSR(Client-Side Rendering)、JAMstack等が出題される。応用情報・システムアーキテクトではマイクロサービス・サービスメッシュ・サーバレスが深掘りされる。
選択肢の発展補足
プレゼン層は近年JavaScript SPA(React・Vue・Angular)でリッチクライアント化が進み、ブラウザがファットクライアント的役割を果たすケースが増加。サーバ側はAPIゲートウェイ+マイクロサービスに細分化され、データ層もポリグロットパーシステンス(用途に応じてRDB・NoSQL・グラフDB・全文検索を使い分け)が一般化。BFF(Backend for Frontend)パターンでクライアント別に最適化したAPIを提供する設計も主流。サーバレス(AWS Lambda等)はファンクション層をイベント駆動で運用する現代的形態。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成24年度 春期 問13/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。