Site home page
Get alerts when Linktionary is updated
Book updates and addendums
Get info about the Encyclopedia of Networking and Telecommunicatons, 3rd edition (2001)
Download the electronic version of the Encyclopedia of Networking, 2nd edition (1996). It's free!
Contribute to this site
Electronic licensing info
Note: Many topics at this site are reduced versions of the text in "The Encyclopedia of Networking and Telecommunications." Search results will not be as extensive as a search of the book's CD-ROM.
Multitiered architectures are software models (and hardware models, as discussed later) that extend the basic two-tiered client/server model to three tiers. In the basic two-tiered client/server model, the client requests services and the server provides services. There are software interfaces on the client and the server side that connect with one another to handle these interactions.
However, the two-tiered model has some drawbacks. Both clients and servers run a portion of the application logic, with the servers handling the loads of back-end data management. This requires that client software be installed, managed, and updated on a potentially large number of systems. The two-tier model tends to move large numbers of records across the network to clients that may not always be optimized to handle them. The model is not efficient in distributed wide area network environments like the Internet. For example, a Web client may be a hand-held system with limited memory and processing power. It cannot be relied on to handle front-end processing tasks.
SQL became popular as a form of client/server middleware because it was efficient at selecting and moving just the records that were needed. In addition, it could run stored procedures directly at the database server, rather than moving data to the client and then running procedures on the client. The three-tiered model extends this approach by moving application logic (the equivalent of SQL stored procedures) to a middle server called the application server. This server performs processing for the client and other tasks as necessary.
The following describes how Microsoft views the functions of the three-tiered model. Figure M-16 (see book) illustrates the concepts and shows the supporting hardware. Also refer to Figure J-2 under the topic "Java" for a detailed illustration of software components in a multitiered Java environment.
Figure M-16 (see book)
By splitting applications into smaller pieces, workloads can be controlled and software development and upgrade are easier. The model has architectural benefits that match network design strategies for distributed systems and data centers. The workload and communication load are divided into pieces that can be handled by specialized devices, such as clustered servers and load balancers. For example, by putting business logic in objects, those objects can be distributed among an array of application servers that handle multiple requests simultaneously. Incoming requests are distributed to application servers via load balancers, as shown on the right in Figure M-16.
The Web is a good example of where to apply the three-tier model. Application developers know little about the potential clients except that they have a near-universal interface: the Web browser. The middle tier accepts requests from clients, retrieves information from the back-end systems, processes the data, and forwards the results to the client. The client is relieved of a lot of work. Thin clients are a good fit in this model.
The middle tier may provide the following services:
Java 2 Platform, Enterprise Edition (J2EE) is an architectural platform that defines the Java component model in a multitiered enterprise environment. Basically, the J2EE platform is defined by components, containers, and connectors. Components are the applications and applets. Containers operate between components and clients to provide services to both. Connections make the J2EE platform portable by providing APIs for existing enterprise vendor offerings. See "Java" for more information and a detailed illustration. Also see "Microsoft.NET."
IBM WebSphere Application Server is an e-business application deployment environment that supports Java servlets, Java server pages, and XML to transform static Web sites into dynamic Web sites. The system provides an EJB (Enterprise Java Beans) server for implementing EJB and CORBA components that incorporate business logic, allowing developers to build high-transaction, high-volume e-business applications.
So far, the discussion is related to software architectures and middleware that reside on application servers. Multitiered architectures also apply to network designs with data centers. A typical multitiered architecture within an Internet-connected data center or POP (point of presence) includes powerful routers connecting to Internet service providers or Internet exchanges, a middle layer that includes load-balancing switches (Cisco calls this the distribution layer), the applications servers, and the back-end systems. Traffic arriving at the data center comes in through the routers and is forwarded to the load balancers. The load balancers then distribute the requests to the most appropriate application server (or distribute requests evenly across the servers). See "Load Balancing."
The thin client model represents another aspect of multitier architectures. A thin client is a Web browser device that relies on an external server to run its applications and store its data. It displays information and accepts keyboard inputs. Some systems have small drives to cache objects from Web sites. A typical thin client is the inexpensive Internet appliance you've seen pictured on kitchen counters with TV-like knobs for accessing the interface. Users store data on a server located at a service provider or an online service. Electronic mail is accessed through a Web browser interface on a remote e-mail server. In this model, the service provider is the middle tier. In fact, giant Internet data centers are emerging to support this model. In some cases, the data center caches so much information via content distribution techniques that users are likely to find what they need at the data center rather than out on the bigger Internet. The Internet data center could be referred to as "Internet in a building."
Copyright (c) 2001 Tom Sheldon and Big Sur Multimedia.