N-Tier Architecture Components
- Clients (Browser & Standalone Application)
– managesuser (a.k.a. actors) interaction with the application
– userscan be both humans and/or other applications
- Database Servers & Legacy Systems
– managethe storage and maintain the integrity of all enterprise data
– can alsoact as a policy store for the policy server
- Directory Server
– Managesuser related information such as id, name, email address, ssn, marital status,credit rating, etc…
– can alsoact as a policy store for the policy server
- Web Server
– managesthe presentation logic used to control what the user interface displays and howuser requests are handled
– differentpresentation logic maybe required for different clients
- Application Server
– managesthe application’s business logic/rules in conjunction with the application’s accessof external data sources
– providesother infrastructure support such as messaging, transaction support,distributed object management, etc…
– can alsoact as a web server and support both the presentation and business logic layers
– typicallysupports the clustering of multiple servers to provide for load balancing andfail over strategies
The n-tierarchitecture model is typically implemented with a:
Client Layer
Presentation LogicLayer
Business Logic Layer
Backend System orEIS Layer
With theintroduction of the browser client, the role of the client layer has beenreduced to providing the minimal support required for user interaction. All ofthe presentation logic for browser clients is located in the presentation logiclayer. This logic is usually implemented on a web/http server located withinthe presentation logic layer. This architecture now provides easy reuse of bothbusiness and presentation logic.
The bulk of the businesslogic and data access support is still located in the business logic layer. Theapplication server located in this layer is a J2EE Application Sever. A majoradvantage of the J2EE Application Server, over earlier application servers, isthat most of the APIs that it implements are based on standards. These standardAPIs provide services for object naming and access (JNDI), data access (JDBC),and messaging (JMS). The J2EE Application Server also provides for the sharingof limited resources by many clients by pooling the resources.