Free Training


C Language  |  CSS  |  MainFrame  |  VBScript  |  PHP  |  XML  |  C++ Tutorials  |  Ajax  |  JavaScript  |  CSS3  |  UML  |  jQuery  |  Microsoft AJAX

Application Development Tutorials

 
Home Tutorials Application Development
 

Three Tier Software Architectures

 

Three Tier Software Architectures Purpose and History

Page 2 of 3


Three Tier Software Architectures Purpose and History

Three Tier Architecture emerged in the last decade as a means of overcoming two tier architecture limitations. The third tier was added as a middle tier between the data management server and the user interface.  This middle tier is a provider of process management. This is where business rules and logic are typically executed. Several hundred users can be accommodated under a Three Tier model, whereas in a two tier model only about a hundred users could be accommodated. Three Tier Architecture accomplishes this through such convenient functions as application execution, queuing, and database staging.



Three Tier Architecture is typically employed when a distributed client server design is necessary that will provide an increase in performance, scalability, flexibility, reusability, and maintainability. At the same time, the complexity of the distributed processing is concealed from the end user. As a result of these optimizations, Three Tier Architectures have been found to be convenient models for Internet applications, as well as information systems that rely on the World Wide Web in some way.


Three Tier Architecture Technical Details

In the diagram below, we can see a model of Three Tier client server architecture. As you can see, it contains a user system on the top tier. This is where such user services as text input, session, display management, and dialog are located.


  • User System Interface
  • Process Management
  • Database management

 


The third tier contains database management functions. Its purpose is to optimize data and file services without having to result to the usage of proprietary database management system languages. This component makes sure that the data is consistent throughout the environment. In order to do so, it utilizes such features as data locking, replication, and consistency. The connectivity among tiers can be changed dynamically, but of course this depends on the user’s request for services and data.


The middle tier on the above model provides process management services which will be shared by multiple applications. These services may include process enactment, process resourcing, process development, and process monitoring. This tier also serves so as to improve performance. It is also called the application server. It improves scalability, reusability, flexibility, and maintainability via the centralization of process logic. This centralization makes change management and administration a lot simpler by localizing the functionality of the system so that changes only have to be written one time. They are then placed on the central tier and made available throughout the systems. With other architectural designs, it would be necessary to write the change in to each and every application.


The central process management tier also serves as a controller of asynchronous queuing and transactions. This thus ensures that transactions will be completed in a reliable fashion. The middle tier successfully manages to distribute database integrity through a commit process that occurs in two phases. Access to resources based on names, rather than locations, are provided. Thus, an improvement of flexibility and scalability results as the components of a system are either moved or added.



It sometimes happens that the central tier will be divided up in to several different units, each serving a different function. When this occurs, then the architecture will be referred to as multi layer. Many Internet applications operate in this fashion. When this occurs, the applications contain light clients that are written in HTML as well as application servers that are composed in either Java or C++. The gap between these two layers is too large for them to be linked together. So instead, an intermediate layer – or a web server – will then be implemented in to the scripting language. Requests from Internet clients are received on this layer, and HTML is subsequently generated utilizing the services situated on the business layer. The additional layer provides an additional level of isolation between the application logic and its layout.




Next Page: Three Tier Architecture usage considerations


Read Next: Client-Server Models and N-Tier Applications



 

 

Comments



Post Your Comment:

Members Please Login
Your Name:*
e-mail ID:(required for notification)*
Image Verification: 
 
 Subscribe    

Weekly Offers

Sponsored Links