Networking – 3-Tier Client/Server Architecture
Introduction to 2-Tier Architecture
2-tier architecture is used to describe client/server systems where the client requests resources and the server responds directly to the request, using its own resources. This means that the server does not call on another application in order to provide part of the service.
Introduction to 3-Tier Architecture
In 3-tier architecture, there is an intermediary level, meaning the architecture is generally split up between:
- A client, i.e. the computer, which requests the resources, equipped with a user interface (usually a web browser ) for presentation purposes
- The application server (also called middleware), whose task it is to provide the requested resources, but by calling on another server
- The data server, which provides the application server with the data it requires
|The widespread use of the term 3-tier architecture also denotes the following architectures:
Comparing both types of architecture
2-tier architecture is therefore a client-server architecture where the server is versatile, i.e. it is capable of directly responding to all of the client’s resource requests.
In 3-tier architecture however, the server-level applications are remote from one another, i.e. each server is specialized with a certain task (for example: web server/database server). 3-tier architecture provides:
- A greater degree of flexibility
- Increased security, as security can be defined for each service, and at each level
- Increased performance, as tasks are shared between servers
In 3-tier architecture, each server (tier 2 and 3) performs a specialized task (a service). A server can therefore use services from other servers in order to provide its own service. As a result, 3-tier architecture is potentially an n-tiered architecture