N層およびN層のアーキテクチャ/設計とはどういう意味ですか?
N層アーキテクチャとN層アーキテクチャ/設計に違いはありますか?
はいの場合、違いは何ですか?
人々は、アーキテクチャをマルチレイヤーとマルチティアの両方であると説明できるという点で、この 2 つの用語を同じ意味で使用することがよくあります。私の見解では、一般に層は物理的な分離を指し、層はより論理的な分離を指します。
たとえば、典型的な Web アプリケーションには、フロント エンド (ブラウザーに表示されるもの) と、アプリケーション サーバーで実行される実際のアプリケーション ロジック、およびデータベースがあります。これは、データベース サーバー、アプリケーション サーバー、およびクライアント マシンがあるため、3 層と呼ばれることがあります。ただし、データベース層、ロジック層、およびプレゼンテーション (または UI) 層を簡単に参照することもできます。
このSCEA スタディ ノートでは、階層型アーキテクチャと階層型アーキテクチャの JEE の違いについて説明しています。
Java EE システムの層
* Client (GUI and Web): GUI directly interacts with web tier. Web uses browser, applets to interact with web server through HTTP. Responsible for direct presentation and interaction with user.
* Web components: processes web requests. Acts as mediator between clients and business components.
* Business: (solves domain-specific) business problems. The abstract business logic processing happens in this tier.
* Integration and Resource: handles connectivity with data stores and other (legacy) systems.
Java EE システムのレイヤー
* Virtual platform (component APIs): used to implement/support business logic. API Components include: JavaBeans, Java Servlets, JavaServer Pages/Faces, Java Message Service API, Java Transaction API, etc.
* Application infrastructure (container): responsible for executing the application. Also provides services like: security, transactions, JNDI, and other connectivities.
* Enterprise services (OS): responsible for the execution environment of the application infrastructure. Provides computing time and access to (abstract) hardware.
* Compute and storage: the hardware or physical server. Provides computing power for the OS.
* Networking infrastructure: responsible for networking services.