Application Tiering

Application tiering refers to separating various components of an application into layers that can be managed independently. A classic example is an Internet application that must scale to support thousands or millions of users. For example, consider the case of a web site that allows users to trade stocks online via their browsers. Such an application would run on web servers, application servers, and database servers. Web servers are the “frontend” of the application, responsible for accepting requests from users and directing them to application servers. The application servers house the application’s logic and interact with the database.

Scaling the web server and application server layers of a tiered application is relatively easy; just add more machines! However, it is not so easy to add databases since the data must be consistent across all databases in the environment. For example, a user who buys 100 shares of XYZ should see the trade recorded no matter what database she connects to when visiting the site. Later chapters will examine data replication, which is a means of achieving horizontal scalability of database servers.

Get Oracle Distributed Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.