Friday, 25 September 2015

Difference Between Two-Tier and Three-Tier Architecture?

Based on the Architecture, Applications were classified into two types as below:-

1) Two Tier architecture

2) Three Tier architecture


Let us discuss about 2 tier and 3 tier architecture in detail with example.
Two-Tier Architecture:-
The two-tier is based on Client Server architecture. The two-tier architecture consist of a client and server. There will be direct communication between client and server. There is no intermediate server between client and server. Both client and server are tightly coupled which causes the application to run faster.
Few examples of client / server communication are:-
  • Communication between the desktop application to database server.
  • Communication between the browser to web server.
  • Communication between the FTP client to FTP server.
The Two-tier architecture is divided into two parts:
1) Client Application (Client Tier)
2) Database (Data Tier)
Advantages:
1.    Easy to maintain and modification.
2.    Communication is bit faster.
Disadvantages:
1.    In two tier architecture application performance of the application degrade upon increasing the number of users/load.
2.    Cost-ineffective compared to other.
Three-Tier Architecture:-
Three-tier architecture typically consists of presentation tier, a business /data access tier, and a data tier. Three layers in the three tier architecture are as below:-
1) Client layer
2) Business layer
3) Data layer
1) Client layer:-
It is known as Presentation layer that consist of the User Interface of the application, example is User registration form which contains text box, label, button.
2) Business layer:-
All business logic is written like data validation, inserting data…e.t.c. It acts as the intermediary layer between Client layer and Data layer.
3) Data layer:
Data Access Layer contains methods to connect with database and perform database operations like insert, update, delete, get data from database based on our input data.
Advantages
1.    High performance and lightweight persistent objects
2.    Scalability –Tier can individually scale horizontally
3.    Performance – Because the Presentation tier can cache requests, network utilization is minimized, and the load is reduced on the Application and Data tiers.
4.    High degree of flexibility in deployment platform and configuration
5.    More Re-use
6.    Increases more Data Integrity
7.    Improves Security – Client do not have direct access to database.
8.    Easy to maintain and modification, will not affect other modules
9.    Performance is good in three tier architecture application.
Disadvantages
1.    Increase Complexity.

No comments:

Post a Comment