What is a three-tier architecture? (什么是三层架构?)
- Client Tier or user interface
- Middle Tier or business logic
- Data Storage Tier
- Browser or GUI Application
- Web Server or Application Server
- Database Server (often an RDBMS or Relational Database)
- JSPs or Servlets responsible for creating HTML or WML user interface pages
- Servlets or JavaBeans responsible for business logic
- Servlets, JavaBeans, or Java classes responsible for data access. These objects usually use JDBC to query the database.
- JSPs, Servlets, or Java client applications responsible for user interface
- Session Beans or Entity Beans whose methods implement business logic and business rules
- Entity Beans whose fields represent data; these fields are "persisted" (stored and retrieved) either by the EJB server (for container-managed persistence) or by the Entity Beans themselves (for bean-managed persistence)
As you can see, the precise definition of "tiers" can vary widely depending on the particular needs and choices of an application designer. However, they all maintain the general division of client-logic-storage.
If the architecture contains more than three logical tiers -- for instance, multiple data feeds, multiple transactional data sources, multiple client applications -- then it is typically called an "N-tier" or "Distributed" architecture.
The three-tier design has many advantages over traditional two-tier or single-tier designs, the chief ones being:
See also:
- What seperates one tier from another in the context of n-tiered architecture?
- In distributed architecture (typical three tier consisting of thin client, middleware & database) which type of JDBC driver should be used and why?
- What is meant by the term "business logic"?
- Are the following schemes 3 tiered architecture?
- What is the recommended, "best" architecture for JSP applications?
IBM:
An application server functions as Web middleware or a middle tier in a three-tier e-business environment. The first tier is the HTTP server that handles requests from the browser client. The third tier is the business database (for example, DB2 UDB for iSeries) and the business logic (for example, traditional business applications, such as order processing).The middle tier is WebSphere Application Server, which provides a framework for a consistent and architected link between the HTTP requests and the business data and logic.