image
icon

WEB HOSTING
Starting at $4.95/mo

Get your website going today and SAVE!

Web Hosting Accounts Start at $4.95/mo plus get FREE Domain Registration.

More

image image
icon

WEB HOSTING SPECIALS

Get FREE Domain Registration now with your web hosting account and Check out The Marketing Package!

More specials and deals found here.

More

image image
icon

WEB MARKETING

Have a business? Its time to get your business out there! Check out The Marketing Package. Its everything you need to start building traffic and customers today.

More

image

Web Database Applications: 3 tier Architecture

Most applications deployed on the web implement a 3 tier architecture comprising of a database tier at the bottom, the application tier in the middle and the client tier on top.

The database tier consists of the DBMS or the database management system and the database. The complex application layer consists of the application logic and exchanges data between the different layers. The top layer is usually a thin client or a browser.

The Client tier which is usually a web browser processes and displays HTML resources, issues HTML requests and processes the responses. These web browsers are HTTP clients that interact with the Web servers using standard protocols. The client is often referred to as a thin client as very little application logic resides in the client tier. It does have built in features to do more than just display html pages, but they too are confined only to displaying data of various kinds. Some application logic in the form of JavaScript is executed by browsers, but it's applications are limited in scope and nature. The advantage of a 3 tier model means that the thin client does not have to be configured and it does not have to depend on any operating platform or additional software. While there are subtle differences between the capabilities of different browsers, more or less they perform similarly.

The Middle Tier consists most of the application logic. It brings together the other layers of the 3 tier. It processes the inputs it receives from the clients and interacts with the database. This consists of the web server, web scripting language and the scripting language engine. While the Web server will process the HTTP requests and formulate responses, the calculation is done by the scripting language which runs on the scripting engine. The Web Server or the HTTP server listens for the HTTP requests on a network and return the responses that contain the requested resources. In cases where the request requires the output after running the program and interacting with the databases, the web server invokes the scripting engine to perform those tasks. The scripts that are executed by the scripting engine can be embedded into static HTML pages making client-tier integration easy. It allows for serving dynamic content and has built in libraries for fast access to the database tier.

The Bottom layer or the database layer consists of the Database Management System or the DBMS and the database itself. This database management layer manages the storage, retrieval of data as well as allows simultaneous access, provides security, data integrity and support applications. While a database is a collection of related data, a DBMS is a set of components for defining, constructing and manipulating the database. It consists of several components.

  1. Applications Interface or the libraries to communicate with the DBMS.

  2. SQL Interpreter which is a parser to check the syntax of incoming statements and translates them into the internal format.

  3. Query Evaluator that generates different plans for evaluating a query by considering database statistics and properties, selects one of these plans and translates it into low level actions that are then executed.

  4. Data Access: These are the modules that manage access to the data stored on disk, including a transactions manager, a recovery manager, the main memory buffer manager, data security manager and the file and access method manager.

A DBMS is required when there is a scenario which would involve multiple people accessing the data at the same time. While it may not be required where there isn't relational data or the data to be collected it atomic, it becomes a convenience when there are large amounts of data that require frequent updating.

Together, these various tiers of a 3 tier architecture are the framework of most web applications deployed on the Internet.

Back to Tech Support Topics