In client/server systems, there are several types of configurations. This article will get into 2-tier architecture
and 3-tier architecture
and explain the differences and the similarities of the two systems.
2-tier architecture is used to describe client/server systems in which 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:
In 3-tier architecture, there is an intermediary level, meaning that 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; and the data server, which provides the application server with the data that it requires:
|The widespread use of the term 3-tier architecture also denotes the following architectures:
- Application sharing between a client, middleware and enterprise server
- Application sharing between a client, application server and enterprise database server.
Comparing Both Types of Architecture
2-tier architecture is 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 or 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:
Image: © alexmillos - 123RF.com