Within commodity network computing, the three-tier architecture has become pervasive. As shown in Figure 1.1, the top level of this model provides a customizable client tier, consisting of components such as graphical user interfaces, application programs, and collaboration tools. The middle tier, often referred to as an application server, consists of high-level agents that can provide application functionality as well as a range of high-level services such as load-balancing, integration of legacy systems, translation services, metering, and monitoring. An important aspect of the middle tier is that it both defines interfaces and provides a control function, coordinating requests across one or more lower-tier servers. The bottom tier provides backend services, such as traditional relational and object databases. A set of standard interfaces allows a rich set of custom applications to be built with appropriate client and middleware software. As indicated in Figure 1.1, these layers can use Web technology such as Java and JavaBeans, distributed objects with CORBA, and standard interfaces such as Java DataBase Connectivity (JDBC).
computing