Web3層アーキテクチャ 【Web 3-tier architecture】
概要
Web3層アーキテクチャ(Web 3-tier architecture)とは、Webアプリケーションのサーバ側の構成をプレゼンテーション層、アプリケーション層、データ層の3層で構成し、それぞれ専門のソフトウェアによって実装する方式。プレゼンテーション層は利用者が操作するクライアント(Webブラウザ)に対する窓口となる層で、HTTPで通信を行うWebサーバが対応する。データの受発信を担当し、データの処理はアプリケーション層に委託する。
アプリケーション層はそのWebアプリケーション固有の機能や処理内容(ビジネスロジック)を実装した層で、Webアプリケーションサーバなどが対応する。アプリケーション開発者が新たに開発したプログラムは主にこの層に実装される。データの保管と読み出しはデータ層に委託する。
データ層はアプリケーションが扱うデータを永続的に保管し、アプリケーション層からの要求に応じて読み出しや追加、更新、削除、検索などを行う。データベースサーバが対応し、データベース管理システム(DBMS)などで構成することが多い。
この3層を独立性の高い要素で構成することで、それぞれ別のコンピュータやクラウドサービスなどで運用することが可能となる。アクセスの増大に合わせてプレゼンテーション層を増強したり、クライアントやデータに影響を与えずアプリケーション層に機能を追加したり、データの増大に合わせてデータ層を増強したり、DBMSを別の製品に入れ替えるといった柔軟な拡張や強化が可能となる。
なお、一般的なクライアントサーバシステムにおける「3層アーキテクチャ」は、プレゼンテーション-アプリケーション-データという役割分担は同じだが、プレゼンテーション層はクライアント側の端末やソフトウェア(操作画面)を指すのが一般的である。この図式にWeb3層を当てはめるならば、プレゼンテーション層の役割がWebブラウザ(上のWebページやスクリプト)とWebサーバにまたがっていると考えることができる。
(2022.3.10更新)