一般的な『Web3層アーキテクチャ』構成とは?


webサーバ周りの勉強をしていて疑問に思ったので質問です。
サーバ構成について『Web3層アーキテクチャ』や単に『3層構造』と呼ばれるものが一般的な構成だというのでwebで調べてみたのですが、どのページもその言葉が指し示すものが異なっているように感じます。

大きくまとめてみると、

 ・解釈1.クライアント ⇔ APサーバ ⇔ DBサーバ
 ・解釈2.クライアント ⇔ webサーバ ⇔ APサーバ ⇔ DBサーバ

という解釈に別れ、また解釈2の場合でも、

 ・解釈2-1.webサーバ=リバースプロキシ機能(Apache HTTP Serverなど)
        APサーバ=Tomcat+StrutsのようなHTTPサーバ機能+ビジネスロジック
 ・解釈2-2.webサーバ=Tomcat+StrutsのようなHTTPサーバ機能+AP呼出コントローラ
        APサーバ=EJBのようなHTTPサーバ機能のないビジネスロジック

と別れているように感じます。

そこで質問なのですが、一般的と言われる『3層構造』とはどんな構成を示しているのでしょうか。そして、それはどんな効果を狙っているのでしょうか。
(負荷分散という意味でいうと、個人的には解釈2-2が最も腑に落ちる構成なのですが…)

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2017/03/22 18:32:45

ベストアンサー

id:tea_cup No.1

回答回数1071ベストアンサー獲得回数194

2-2でよいと思います。目的は、変更容易性、拡張性を高めるためです。

?-3-5. OSSによるWeb3層アプリケーション | 日本OSS推進フォーラム

【学習の要点】
* Web3層アプリケーションとは、Webシステムの構成要素をプレゼンテーション層、アプリケーション層、データ層の3層に分割し、独立したモジュールとして設計するアプリケーションである。

* 3層アーキテクチャを採用することにより、ユーザインタフェース、ビジネスロジック、データベースの相互依存を抑え、変更容易性、拡張性を高めることができる。

* Web3層アプリケーションはプレゼンテーション層を担当するWebサーバ、ビジネスロジックを担当するアプリケーションサーバ、データ層を担当するデータベースサーバによって構築される場合が多い。

id:liml

回答ありがとうございます。

2-1解釈でシステム構築していそうな話を聞いたりするので、
意見が聞けて良かったです。

2017/03/22 18:32:40

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません